こんな機能があるんだという気持ちになったのでメモ
環境
rspec (3.7.0)
使いかた
example_spec.rb
として以下のスペックを書いてみる
実行すれば以下の結果
require "rspec" describe "DummyTest" do describe "Target" do context "Case1" do it "SuccessA" do expect(true).to be true end it "SuccessB" do expect(true).to be true end end context "Case2" do it "FailedA" do expect(false).to be false end it "FailedB" do expect(false).to be false end end end end
$ bundle exec rspec example_spec.rb .... Finished in 0.0161 seconds (files took 0.16465 seconds to load) 4 examples, 0 failures
このときCase2のテストをスキップしたい場合は以下のように context
から xcontext
に書き換えるとスキップする。
xcontext "Case2" do
書き換え後の結果は以下
$ bundle exec rspec example_spec.rb ..** Pending: (Failures listed here are expected and do not affect your suite's status) 1) DummyTest Target Case2 FailedA # Temporarily skipped with xcontext # ./example_spec.rb:16 2) DummyTest Target Case2 FailedB # Temporarily skipped with xcontext # ./example_spec.rb:20 Finished in 0.00591 seconds (files took 0.09567 seconds to load) 4 examples, 0 failures, 2 pending
この x
をつけたメソッド、 xdescribe
も xit
も用意されているので、spec書いていて特定のものだけ抜き出しでみたいなとかそういう時に便利。