ruby, 俺メモ rspecを初めて使ったので、モックを使うメモ gemのmailを使ってGmailを送るメソッドがある。 require "mail" # ... def send_alert_to_gmail(content) mail = Mail.new mail.from = CONFIG['email'] mail.to = CONFIG['to'] mail.charset = "UTF8"... 続きを読む
この連載では Test::Unit を代替するテスティングフレームワークである RSpec (先日、サイトが移転しました。新しい URL は http://rspec.info です) の使い方や、 その背景にある考え方を何回かに分けて連載形式でお届けします。 連載全体を通じて、次のような... 続きを読む
RSpec is going through a transition with a huge refactoring for version 2. It’s currently only in beta, but if you want to get the jump on things with RSpec 2.0 there are a few changes worth knowing to ease the upgrade path. The rake tasks h... 続きを読む
素でRSpecを使うためのRakefile書き捨てってわけでもないけど、フレームワーク使うほどのものでもない。 ってかんじものを作るときに作ったもの。 というかGitHubのどっかからぱくってきたものですが。 # -*- encoding: utf-8 -*- require 'rubygems' require '... 続きを読む
2011年06月04日12:14 Ruby 今さら聞けない Rails3 + DataMapper + Haml + jQuery + RSpec な開発環境の作り方 というわけで、今さらですが Rails3 な開発環境 (Ruby 1.8.7, Rails 3.0.7) を作ってみました。そのときのログを残しておきます。 なお、ActiveRecor... 続きを読む
RSpecとHudson(現Jenkins)との連携についてRSpec and ci_reporterという簡潔にまとまった記事がありました。 ところが私の環境ではRSpecが古いためか、そのままではダメでした。動いたコードを載せておきます。 Rakefile [ruby]require ‘spec/rake/spectask’ ... 続きを読む
\n \n \n \n \n \n テスト時間は早ければ早いにこしたことはない。全部のテスト通すの遅いとやらなくなりがち\n 1テストと、全テスト実行・主に二つに分けられる\n ソリューションはいくつかありますがこんなものがあります なんでこんなのがあるかというと巨大... 続きを読む
【前提】exampleの構成要素 fixture (replacement) Factory(:user) mock / stub User.should_receive(:all) User.stub(:first).and_return(@user) action User.my_method expectation should have(3).friends →これらを組み合わせてexampleを書く これを it "t... 続きを読む
Created on 2 Jul, 2010 | Tag(s): ruby rails mongodb haml rspec 会社用の、小物Webアプリを作ろうかと思い、せっかくなのでRuby on Rails 3とmongoDBで作ろうかなと思い、とりあえず環境を作るところまでのメモ。 Rails 3 のインストール とりあえず Raild 3... 続きを読む
この連載では、海外の良質な記事やブログを翻訳して紹介します。 第 1 回目は、Jared Carrollさんのブログ記事「RSpec Best Practice」です。 RSpec は、振舞駆動の設計プロセス (behaviour driven design process) において、人間にとって読みやすい仕様を書く... 続きを読む
class StackTest 続きを読む
まず仕様を満たすための振る舞いを定義し、それに準拠するようにプログラムを段階的に開発していく手法 BDD(Behavior Driven Development, 振舞駆動開発)。ITアーキテクト Vol.4 (IDGムックシリーズ) で知った時に、そのうち試すつもりがすっかり忘れてしまっ... 続きを読む