4

現在、Thoughtworks Studios の Cruise、Gallio を使用して xunit.net のファクト/テストを実行し、ncover 2 を使用してコード カバレッジを実行して CI をセットアップしています。

コード カバレッジを実行すると、ビルド エージェント サーバーが持つ 4 つの CPU の 1 つがペグされることに気付き、代わりに使用できるマルチスレッド テスト ランナーがあるかどうか疑問に思いました。遊んでいましたか?簡単に検索しましたが、ほとんどのヒットは、マルチスレッド テストの実行ではなく、マルチスレッド コードのテストに関するものです...

4

4 に答える 4

2

Gallioは並列テスト実行を実装します。

于 2009-03-28T03:05:40.340 に答える
1

ちょうど昨日、Damon Payne によるこの投稿に出くわしました。

http://www.damonpayne.com/2008/05/09/ConcurrentUnitTestingWithXUnitNet1.aspx

ここでは、複数のコアを利用するためにクラスを同時実行の単位として使用してテスト ケースを明示的に配布する xUnit.NET 用のカスタム テスト ランナーを作成する手順を説明します。

于 2009-01-28T15:37:26.780 に答える
1

NUnitでは、別のスレッドでテストの実行を開始する/thread パラメーターを渡すことができます。テストを生成するためのスレッドプールを用意するのはそれほど面倒なことではないと思います。テストに依存関係がないことを確認する必要があります。

xUnit.NET または NUnit リストのいずれかについて質問します。チャーリーが NUnit 3.0 のその部分を作ろうとしているのは知っています。拡張機能としてPNunitを見ることもできます。複数のスレッドで xUnit.NET を取得するために取り組んでいる誰かの記事もあります。

于 2008-11-12T18:34:10.707 に答える
0

少なくとも、CruiseControl.NET では複数の 2 つの操作を同時に実行できることはわかっています。クルーズも同じだと思います。それぞれテストの 1/4 で 4 つのインスタンスを実行し、結果をつなぎ合わせることができます。ただし、それらをいつマージするかを知るのは難しい場合があります。

于 2008-11-12T18:25:57.867 に答える