RSpecの特定のテストの時にだけbinding.pryで動作を確認する
RSpecのテスト中にbinding.pry
で変数の状態などを確認できるようにpry-byebug
を入れて使ってみたのですが、binding.pry
を入れておいたメソッドが複数のテストから呼ばれていると、そのテストのたびに全て止まってしまい、何度もexit
を入力しなければすべてのテストを終えれませんでした。
特定のテストでだけbinding.pry
を有効にするにはどうすればよいのでしょうか?
以下に例を示しておきます。
Classファイル
class Post
def foo
binding.pry
# do something
return nil
end
def bar
# foo を呼び出して何かする
end
end
Specファイル
let(:post){ Post.create }
describe ".foo" do
it do
expect(post.foo).to be nil
end
end
describe ".bar" do
it do
expect(post.bar).to be 1
end
end
この時に一つ目のテストではbinding.pry
で止まるけども、2つ目のテストでは止めずに処理を続行させたいと思っています。