RSpec2で特定のテストを実行する
Relishより、次のようにすることで特定のdescribe/context/itのみを実行することができる。
spec_helper.rbのRSpec.configureにfilter_runの設定を追加:
RSpec.configure do |c| c.filter_run :focus => true end
テストしたいdescribe/context/itに:focusオプションを追加:
describe User do describe "#say", :focus => true do it "should return a String" do : end end end
こうすることで:focus => trueを指定したテストのみが実行され、それ以外は無視される。複数個指定すればそれらすべてが実行されるし、ひとつも指定しなければ何もテストされない。テストコードが多い中で新規にテストを追加する場合などに便利だと思う。
上記のRelishのページに書かれている run_all_when_everything_filtered を設定すれば、:focusが1つも指定されていない場合に全テストを実行するというもの。