テストと Rspec は私にとって初めてのことです。現在、Rspec と Shoulda および Capybara を使用してアプリケーションをテストしています。モデル、コントローラー、ヘルパー、ルーティング、およびリクエストをテストすることは問題ありません。しかし、ビューで正確に何をテストする必要がありますか? 実際には、DOM を含むビューですべてをテストしたいのですが、やりすぎたくもありません。
3 に答える
この3つが良い出発点になります
Capybara を使用して、サイトのルートから開始し、テストしたいビューが表示されるまで、リンクなどをクリックします。
ページにあるはずのコンテンツが実際にページに表示されていることを確認してください。そのため、「ユーザー」が製品 1のページにアクセスした場合は、製品 1のすべてのコンテンツが実際にそこにあることを確認してください。
ユーザーごとに異なるコンテンツが表示される場合は、それが機能していることを確認してください。そのため、管理者ユーザーに管理者タイプのボタンが表示される場合は、ユーザーが管理者である場合はボタンが表示され、管理者でない場合は表示されないことを確認してください。
これらの 3 つのことは、かなり良いベースです。初戦でも大勝利です。構文エラーはテストに失敗するため、誤って導入した可能性のある奇妙なビュー構文エラーをキャッチします。
私の職場では、単体テストを行うためだけに RSpec を使用しています。
ビジネス テストまたは動作テストには、ビジネスおよび IT 担当者にとってはるかに読みやすい Cucumber を使用しています。それは、ビジネスと署名する契約のようなものであり、実行可能な文書のようなものです。
Cucumber をご覧ください: http://cukes.info/
ビュー スペックを使用して、jQuery コードで依存している ID とクラスをビューが使用していることを確認します。
そして、同じページの異なるバージョンをテストします。例えば:
welcome message A
新規ユーザーとリピーターの両方が表示されることを確認するために、2 つの完全な要求仕様または機能仕様を作成したくありませんwelcome message B
。代わりに、ケースの 1 つを選び、それに対する要求または機能仕様を作成してから、両方のケースをテストする追加のビュー仕様を作成します。
Rails Test Prescriptionsは、ビュー テスト専用の章があるため、興味深いかもしれません。