开发者

Replace Console.WriteLine in NUnit

I haven't done much with NUnit before, but I just wanted to dump some text to a window in a conso开发者_StackOverflowle type fashion. For example:

Console.WriteLine("... some information...");

That won't work of course because NUnit is driving things.

I'm in the middle of building some unit tests and want to dump a list of variable values for inspection during debug. It isn't strictly a unit test if I need to do this, I admit that, but it would be convenient.


In NUnit v3, you can also write to the test results output for debugging with

TestContext.Out.WriteLine("Message to write to log");


You can see the console output. You just have to select the "Text Output" tab in the NUnit GUI runner.

Replace Console.WriteLine in NUnit

If you are using the ReSharper test runner, the console output should be displayed. Ensure that the test runner output window is displayed by clicking the "Show Output" button in the test runner tool bar:

Replace Console.WriteLine in NUnit

You should then get something as follows:

Replace Console.WriteLine in NUnit


Try using System.Diagnostics.Debug.WriteLine instead.


In Visual Studio 2017, in the Test Explorer window, there is a link, Output, in the lower Test pane. This brings up anything written to the console during that unit test.


Use the Test-Output view.

Steps:

  1. Open Test Explorer
  2. Select any particular test
  3. Run it if it has never been run.
  4. Click on the output link on the test results pane.

There is no need to replace Console.WriteLine with anything as this view logs messages from:

Console.WriteLine

Trace.WriteLine

Debug.WriteLine

TestExplorer.Out.WriteLine

Replace Console.WriteLine in NUnit

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜