QA@IT
«質問へ戻る

質問を投稿

Rails/Capybara2 での feature spec, request specs, controller spec の使い分けの基準は

rspec-rails and capybara 2.0: what you need to know - andylindeman.com によれば、capybara 2.0 を使う Rails アプリでは、これまで request spec で capybara の語彙で書いていたテストは、feature spec として、spec/features 以下に置くようです。それで request spec で何をテストするかというと "Use RSpec request specs to test interactions with your application as a HTTP API" という意見がサンプルとともに示されています。ただ、サンプルのテストを見ていると、こういうの、コントローラのテストとして書いていたなーと思ってしまいました。そうだとするとコントローラのテストの役割というか、新 request spec との役割分担が変わってくるのかと思いました。feature spec を利用することを前提とした場合、feature spec、request specs、controller spec はどう使い分けるべきなのでしょうか。

[rspec-rails and capybara 2.0: what you need to know - andylindeman.com](http://alindeman.github.com/2012/11/11/rspec-rails-and-capybara-2.0-what-you-need-to-know.html) によれば、capybara 2.0 を使う Rails アプリでは、これまで request spec で capybara の語彙で書いていたテストは、feature spec として、spec/features 以下に置くようです。それで request spec で何をテストするかというと "Use RSpec request specs to test interactions with your application as a HTTP API" という意見がサンプルとともに示されています。ただ、サンプルのテストを見ていると、こういうの、コントローラのテストとして書いていたなーと思ってしまいました。そうだとするとコントローラのテストの役割というか、新 request spec との役割分担が変わってくるのかと思いました。feature spec を利用することを前提とした場合、feature spec、request specs、controller spec はどう使い分けるべきなのでしょうか。