{
"title": "並列実行 - xUnit.net",
"useMathjax": false
}
================================================================================
Collection
属性をつけることによって、テストクラス間の同時実行を管理する。Collection
属性をつけ同じ文字列を引数に与える。[Collection("Our Test Collection #1")]
public class TestClass1
{
[Fact]
public void Test1()
{
Thread.Sleep(3000);
}
}
[Collection("Our Test Collection #1")]
public class TestClass2
{
[Fact]
public void Test2()
{
Thread.Sleep(5000);
}
}
TestClass1
と TestClass2
は同時には実行されない。AssemblyInfo.cs
に設定をする。//
[assembly: CollectionBehavior(CollectionBehavior.CollectionPerAssembly)]
// テストの同時実行で利用するスレッド数の最大値
[assembly: CollectionBehavior(MaxParallelThreads = n)]
// このアセンブリ内のテストを並列で処理する
// デフォルト : false
[assembly: CollectionBehavior(DisableTestParallelization = true)]