2

私は TFS 2008 を使用しています。継続的インテグレーション ビルドとインテグレーション テストの一環として、単体テストを毎晩実行しています。

他にどのような種類のテストを自動化し、ビルド プロセスに含めますか? そのためにどのような技術を使用していますか?

スモーク テスト、パフォーマンス テスト、負荷テストについて考えていますが、これらをチーム ビルドに統合することがどれほど現実的かはわかりません。

4

2 に答える 2

3

まず、コードをチェックインする前に実行する必要があるチェックイン (スモーク) テストがあります。これは、テストを実行するジョブを実行することによって自動的に行われ、テストが正常に完了するとソース管理にチェックインされます。次に、クルーズ コントロールがビルド テストと回帰テストを開始します。製品がビルドされ、いくつかの統合テストが実行されます。テストの数は、リリース サイクルのどこにいるかによって異なります。ランプダウン中のサイクルの後半に、さらにテストが追加されます。Cruise Control は、特定の時間枠 (12 分) 内にすべての送信を取得するため、変更をビルドして少数の他のユーザーでテストすることができます。3 つ目は、自動化されたナイトリー ビルドと非常に大規模なテストです。2 ~ 3 週間ごとにロード ポイントまたはマイルストーン ポイントがあります。ロード ポイントでは、すべての自動テストが実行され、さらに手動テストが実行されます。マイルストーンごとにパフォーマンス テストも行われます。要求に応じてパフォーマンス テストを開始できますが、利用できるハードウェアが限られているため、人々はパフォーマンス テストのために列に並ばなければなりません。通常、特にパフォーマンスを向上させるために変更を加える場合を除き、人々は負荷パフォーマンス テストに依存しています。最後に、負荷ごとにストレス テストも行われます。これらのテストは、パフォーマンスとは対照的に、製品にメモリ リークや製品の 24 時間年中無休の実行を妨げるものがないことを確認することに重点を置いています。これらはすべて、ant、クルーズ コントロール、および Python スクリプトを使用して実行されます。通常、特にパフォーマンスを向上させるために変更を加える場合を除き、人々は負荷パフォーマンス テストに依存しています。最後に、負荷ごとにストレス テストも行われます。これらのテストは、パフォーマンスとは対照的に、製品にメモリ リークや製品の 24 時間年中無休の実行を妨げるものがないことを確認することに重点を置いています。これらはすべて、ant、クルーズ コントロール、および Python スクリプトを使用して実行されます。通常、特にパフォーマンスを向上させるために変更を加える場合を除き、人々は負荷パフォーマンス テストに依存しています。最後に、負荷ごとにストレス テストも行われます。これらのテストは、パフォーマンスとは対照的に、製品にメモリ リークや製品の 24 時間年中無休の実行を妨げるものがないことを確認することに重点を置いています。これらはすべて、ant、クルーズ コントロール、および Python スクリプトを使用して実行されます。

于 2008-08-29T19:52:31.697 に答える
1

ビルド プロセス中に負荷テストを統合することはお勧めできません。通常の単体テストを行って、すべてのコードが期待どおりに機能することを確認してください。負荷テストとパフォーマンス テストは別々に行う必要があります。

于 2008-08-29T10:18:01.013 に答える