おもしろwebサービス開発日記

Ruby や Rails を中心に、web技術について書いています

rspec

RSpec 3 時代の設定ファイル rails_helper.rb について

rspec-rails、3.0.1 がリリースされていますね。インストールして rails g rspec:install とすると、spec/rails_helper.rb という見慣れないファイルが作成されます。これは一体何でしょうか。 rspec-rails のREADMEを読むと、これからは spec/rails_helper.…

rspec-rails を 3.0.0.rc1 にアップデートする際に気をつけること

rspec-rails を 3.0.0.rc1 にアップデートすると、きっとテストがこけまくるようになるはず。そんな時は spec_helper.rb に次の設定を足してあげてください。 config.infer_spec_type_from_file_location! これまでの rspec-rails は、例えば spec/controlle…

Rspec で rake タスクをテストする用の gem を作った

しばらく前に表題の gem を作りました。 willnet/rake_shared_context 中身はただの shared_context です。これは僕のオリジナルな gem ではなくて、thoughtbot 社のブログに書かれた shared_context のコードをほぼそのまま gem にした感じです。毎回 rake …

Chapter 17 Extending RSpec その3

Chapter 17 Extending RSpec その2の続き。 17.4 Macros 下記のコードを describe Widget do it "requires a name" do widget = Widget.new widget.valid? widget.should have(1).error_on(:name) end end カスタムマッチャを使って極限まで省略すると下記…

Chapter 17 Extending RSpec その2

Cahpter 17 Extending RSpec その1 - おもしろWEBサービス開発日記の続き。 17.2 Custom Example Groups describeメソッドは Spec::Example::ExampleGroup のサブクラスを作る。itメソッドはそのサブクラスのメソッド。Spec::Example::ExampleGroupは下記の…

Cahpter 17 Extending RSpec その1

Chapter 13 Spec::Expectations その2 - おもしろWEBサービス開発日記の続き。ちょっと間を飛ばして17章へ。 17.1 Global Configuration exampleにモジュールをincludeしてるかのようなglobalなbeforeやafterを定義している。下記のようにSpec::Runnerモジ…

Chapter 13 Spec::Expectations その2

Chapter 13 Spec::Expectations - おもしろWEBサービス開発日記の続き。 13.3 Predicate Matchers array.empty?.should == true みたいに書くのはいまいち見た目が良くない。 array.should be_empty Rspecでは上記のようにも書けるようにした。これは全ての…

Chapter 13 Spec::Expectations

the rspec book - Chapter 12 Spec::Example その1 - おもしろWEBサービス開発日記 the rspec book - Chapter 12 Spec::Example その2 - おもしろWEBサービス開発日記の続き。 BDD BDDのゴールの一つは正しい言葉を得ること。技術的なことのわからない人と…

the rspec book - Chapter 12 Spec::Example その2

the rspec book - Chapter 12 Spec::Example その1 - おもしろWEBサービス開発日記の続きです。 before メソッド before(:all)とbefore(:each)がある。それぞれ before(:all)はexample groupで一回 before(:each)はexample毎に一回 実行される。初期状態ご…

the rspec book - Chapter 12 Spec::Example その1

The RSpec Bookを読んでの自分用メモです。サブアカの方にメモっていこうかと思いましたが、RSpecの情報はあまり世に出ていないけど需要はありそうな気がしたのでこっちに書きます。意訳と感想がごっちゃになっているし、自分が知ってる情報については省略し…