2012-01-26 12 views
3

TeamCityを使用して、コード変更の影響を受けるテストを最初に実行します。TeamCityで最初にコード変更による影響を受けるテスト

NCrunch(http://ncrunch.net)とMighty Moose()は、ローカル開発マシンのソリューションを提供しています。 TeamCityのソリューションはありますか?

コンテキスト:私たちは、コードベースに対して多くの統合テストとプログラマーテストを実行しています。統合サーバーですべてのテストを実行するには、最大4時間かかります。かなり強力なハードウェア上で動作し、その目的のために改善の余地はあまりありません。開発者がプッシュをコミットすると、素早いフィードバックを得るのが良いでしょう。

+1

他のサーバー上のチームシティーエージェントを設定することを検討してください。別のオプションは、すべてのチェックインではなく、夜間に実行するように統合テストを設定することです。**ユニット**のテストは、関連するコードが変更されたときでも実行されます。また、関連するコードが変更されたときにのみ起動するビルドトリガを設定することもできます。 – TrueWill

+0

すでに8台のエージェントサーバーがあります...また、私たちのテストの5%だけが単体テストです。これは、単体テストに必要なレベルの分離とモジュール性を提供しないブラウンフィールドアプリケーションです。 –

+0

@ noah1989 - あなたはTypeMockまたはJustMockを見たいかもしれません。 – TrueWill

答えて

3

テスト全体の時間を短縮するには、テストを2つ以上の部分に分割し、TeamCityで各部分のビルド構成を個別に行うことができます。次に、これらすべての部分にスナップショット依存関係を持つビルド構成を1つ作成することができます。最後に、VCSトリガーをこの構成に追加して、依存関係の変更をトリガーするオプションを付けることができます。実際にテストを実行しているビルド構成では、トリガーがまったくない可能性があります。

このセットアップと十分なエージェントを使用すると、テストのいくつかの部分を並行して実行できます。統合テストビルド構成がトリガされると、そのリビジョンは固定され、トリガされたすべてのビルドで同じになるため、スナップショット依存関係の結果は一貫しています。テスト構成に依存するビルド構成はビルド・ステップを全く持たないかもしれませんが、唯一のタスクは集約されたテスト結果とトリガーを提供することです。

チームシティーはまた、.NETとJava用の並べ替えのテストをサポートし、あなたは、ドキュメントでこの機能の詳細を読むことができます:http://confluence.jetbrains.net/display/TCD65/Running+Risk+Group+Tests+First

+0

Thxです。私たちがすでにやっている大胆な試みの大半。 (テストの分割、さまざまなビルド構成、トリガーとパイプラインのビルド) – Robert

関連する問題