web-dev-qa-db-ja.com

ナントビルドの実行時に表示されるNUnitテストにログメッセージを追加するにはどうすればよいですか?

NUnitでは、テストにDebug.Printステートメントを追加すると、それらはテスト出力に表示されます。 (少なくとも、Resharperユニットテストウィンドウで実行します)

同じテストを実行するnantビルドファイルを使用する場合、それらのDebug.Printステートメントは表示されません。

NUnit出力とnantからのビルドログ出力の両方に表示されるメッセージをユニットテストに追加するにはどうすればよいですか?

25
The Evil Greebo

Console.WriteLine()は保持する必要があります(少なくとも、私のバージョンのNUnit用です)。

とはいえ、テキスト出力を追加するたびに、それをメッセージ付きのアサーションに変換する方法を検討してください。あなたのテストははるかに良くなります。

28
skolima

テスト中のNUnit3のロギング方法は、TestContextクラスを介したものです。静的な書き込みバリアントがたくさんあります。それぞれがテスト結果に一般的なコンテンツを出力します。

TestContext.OutTextWriterを生成します。これは、ログ情報をテスト結果に出力するためにも使用できます。

39
Randy Larson