ReSharper テスト ランナーとxUnitContrib resharperプラグインで xUnit を使用しています。
長時間実行するテストがある場合、進行状況インジケーターを単体テスト出力ウィンドウに出力できるようにしたいと考えています。
とを試しましDebug.WriteLines
た。テストが完了するまで、出力ウィンドウには何も表示されません。 Trace.WriteLine
Console.WriteLine
例えば:
[Fact]
public void Test()
{
Debug.WriteLine("A");
Trace.WriteLine("B");
Console.WriteLine("C");
Thread.Sleep(10000);
}
テストは、10 秒が経過してテストが完了するまで出力を表示しません。途中で出力を取得するにはどうすればよいですか?
更新 1
MSTestとNUnitでも試しました。NUnit は途中で出力を表示する唯一のものです。
MSTest と XUnit は、テストが完了するまで出力を返しません。奇妙な点は、XUnit と NUnit のテスト出力が次のようになっていることです。
A
B
C
MSTest の出力は次のようになります。
C
Debug Trace:
A
B
これらすべてのバリエーションを考えると、答えは、出力する方法とタイミングを決定するのはテストランナーの実装次第だということだと思います。XUnit テスト ランナーを構成できるかどうかは誰にもわかりませんか?
更新 2
これは xUnitContrib の欠陥に違いないと思います。CodePlex issue trackerに投稿されました。