具体的には、Scalatra プロジェクトの場合ですが、この質問はおそらくほとんどのプロジェクトに当てはまります。
たとえば、通常は次のように実行します。
- 単体テスト
- コードの品質チェック (カバレッジ、重複、複雑さ、jsLint!)
- 統合テスト (多すぎない!)
- 受け入れテスト (通常は「チェックイン前」のサブセット)
- 回帰テスト (基本的に受け入れテストと同じですが、より大きなセット)
- 性能試験
これらの異なるサブセットをコンテキストごとに実行したい - つまり、単純なコード変更の後、最初の 3 つだけを実行するかもしれません。チェックインする前に、より大きなセットを実行したい場合があり、継続的インテグレーション サーバーには、さらに大きなセットを持つ「高速」ビルドと「低速」ビルドがある場合があります。
基本的な sbt ドキュメントは、単一の「テスト」ターゲットを想定しているようです。このように複数のテスト フェーズを実装するための推奨される方法はありますか?