私はstackoverflowを見て、これと似たタイトルの質問を1つまたは2つ見つけることができましたが、私が求めていることに答えるものはありません. これが重複していたらごめんなさい。
Unity テストでは、「テストごとに 1 つのアサーション」というガイドラインがあります。stackoverflow やインターネットを読んでみると、このルールは少し緩和できることが一般的に認められていますが、すべての単体テストでは、コードの 1 つの側面または 1 つの動作をテストする必要があります。これは、テストが失敗したときに何が失敗したかをすぐに確認でき、それを修正することで、将来別の時点でテストが再び失敗することはないため、うまく機能します。
これは Rails の単体テストではうまく機能し、機能テストでも問題なく使用しています。しかし、統合テストに関して言えば、テストに多くのアサーションを含める必要があることは、やや暗示的です。それとは別に、彼らは通常、機能テストと単体テストで一度行われたテストを繰り返します。
では、これら 2 つの要素で統合テストを作成する際に推奨されるプラクティスは次のとおりです。
- 統合テストの長さ: 統合テストを 2 つに分割する必要がある場合の測定方法は? リクエスト数?または大きい方が常に良い
- 統合テストのアサーションの数: システムの現在の状態に関する単体テストと機能テストで提示されるアサーションを毎回繰り返す必要がありますか、それとも、正しい出力が生成されたかどうかをテストするために最後に 5 つほどのアサーションのみを使用する必要がありますか?