プロジェクトの単体テストと統合テストを作成する必要があります。
それらを一緒に保持する場合、このアプローチには利点または欠点がありますか?
一般的に:はい、統合テストと単体テストを別のフォルダーに配置する必要があります。多くの場合、プログラマーはこれらの2種類のテストの間に明確な線を引かず、役立つ種類のテストを記述するだけです。しかし、統合テストはしばしば以下を含むため、遅くなる傾向があります。
対照的に、ユニットテストは高価な操作を模擬するため、ユニットテストはすぐに実行される傾向があります(実際、テストの実行で最も遅い部分は、多くの場合、テストフレームワーク自体です)。
プログラマーがシステムで作業しているときは、編集とテストのサイクルにあります。彼らがテストフィードバックをより早く取得し、サイクルが短いほど、生産性が向上します。そこで、重要なテストのみを実行して、短時間で完了したいと考えています。完全なテストスイートは、QAプロセスの一部としてのみ実行されます。 CIサーバー上。
これは、大規模なテストスイートを分類する必要があることを意味します。特定のコンポーネントの単体テストのみを選択できますか?遅いテストを除外できますか?これを行う簡単な方法の1つは、さまざまなディレクトリにさまざまなテストスイートを保持することです。テストが非常に少ない場合、プログラマーがテストのサブセットを簡単に選択できる限り、単一のディレクトリでも問題ありません。
プログラマーがフィードバックをすばやく受け取ることができるものは何でもいいです。最も包括的なテストスイートは、定期的に実行されなければ問題ではありません。
参考文献: