フローのテストに関連するRails統合テストが見つかりました。コントローラーテスト(レール5で非推奨)を統合テストに置き換える業界標準についていくつか質問があります。統合テストのためのレールコントローラのテストを置き換えることは常にdbにとどまるべきですか?
通常、パラメータを取得する小さなコントローラがあり、適切なコラボレータを呼び出してレスポンスを準備します。コントローラオブジェクトでコラボレータを直接模擬してテストするのは簡単です。
すべてのコントローラーテストを統合テストに移行して、dbを永続させるオーバーヘッドが懸念されます。この場合の基準は何ですか?
完全なフローではなく、1つのルート/アクションをテストするときの標準とは何ですか?
どのように我々はこれを置き換えることができますが
@controller.stubs(:authenticate).returns(true)
回答ありがとうございます。すべてのことに同意する。ユーザの認証と格納は違いはありませんが、コントローラテストを統合テストに移行するときに(Rails 5で提案されているように)、すべてのモデルをdbに格納するのはオーバーヘッドです。あなたはすべてのコントローラアクションのためにDBにすべてを格納するレール統合テストを行いますか? – Jorge
@Jorge私は現在のテストに必要なものだけを作成するために治具/工場を使用します。 –