私はRspecBookを読んでいて、その本ではSeleniumでWebratを使用しています。
Webratを介して使用する代わりに、Railsでの統合テストにSeleniumを直接使用することは可能ですか?
それぞれの長所と短所は何ですか?
Seleniumを単独で使用することは間違いなく可能です。Firefox用のSeleniumIDEプラグインをインストールすることをお勧めします。これにより、クリックなどを自動化するための簡単なスクリプトレイヤーが提供されます。SeleniumをRailsと統合することで、コマンドラインから統合テストを実行できます。これはさまざまな理由で便利です。チームの他の開発者はそれらをより簡単に実行でき、複数のブラウザーに対して同じテストをより簡単に実行できます。継続的インテグレーションサーバー(Webブラウザーを起動できる)からテストを実行できます。
統合テストには、CucumberとCapybaraを使用します。WebratはJavaScriptをサポートしていないため、たとえばクリックイベントハンドラーがあるリンクをクリックしても、ハンドラーは起動しません。CapybaraはJavascriptを知っているので、イベントハンドラーを起動します。Seleniumでもこれを実行できますが、すでにCucumberを使用しています。より統合されており、テストの保守が容易なため、SeleniumよりもCucumber+Capybaraテストの方が好きです。