NUnit 文本输出不正常
NUnit text output is not behaving
我有以下测试:
[Test]
public void LogTest()
{
TestContext.WriteLine("Hello");
TestContext.Error.WriteLine("Ergh");
TestContext.Out.WriteLine("Out");
TestContext.Progress.WriteLine("Is this progress?");
}
应该写入 NUnit 日志 (?)。
当我使用 ReSharper 运行 时,我只得到单元测试会话 window.
中显示的字符串 Hello
和 Out
当它是 运行 和 NC运行ch 时,我根本没有得到任何输出。
- 这是为什么?
- 我应该怎么做?
None 的 NUnit 的 Write 语句写在任何地方!它们被转换为消息,然后由运行器作为事件处理。输出被发送到跑步者决定它应该去的任何地方。
在测试中 Console.Write 也是如此,因为 NUnit 拦截了它。
对于您正在使用的跑步者:
确保您拥有最新版本的 ReSharper。 TestContext.Error 和 TestContext.Progress 创建一条新消息,您的版本可能无法处理该消息。联系 JetBrains 人员,看看他们支持什么。
对于NCrunch,我也会检查你的版本。 NCrunch 非常密切地跟踪 NUnit,如果最新版本不能处理所有问题,我会感到惊讶。
要暂时查看消息,请使用 NUnit 3 控制台运行程序。
我有以下测试:
[Test]
public void LogTest()
{
TestContext.WriteLine("Hello");
TestContext.Error.WriteLine("Ergh");
TestContext.Out.WriteLine("Out");
TestContext.Progress.WriteLine("Is this progress?");
}
应该写入 NUnit 日志 (?)。
当我使用 ReSharper 运行 时,我只得到单元测试会话 window.
中显示的字符串Hello
和 Out
当它是 运行 和 NC运行ch 时,我根本没有得到任何输出。
- 这是为什么?
- 我应该怎么做?
None 的 NUnit 的 Write 语句写在任何地方!它们被转换为消息,然后由运行器作为事件处理。输出被发送到跑步者决定它应该去的任何地方。
在测试中 Console.Write 也是如此,因为 NUnit 拦截了它。
对于您正在使用的跑步者:
确保您拥有最新版本的 ReSharper。 TestContext.Error 和 TestContext.Progress 创建一条新消息,您的版本可能无法处理该消息。联系 JetBrains 人员,看看他们支持什么。
对于NCrunch,我也会检查你的版本。 NCrunch 非常密切地跟踪 NUnit,如果最新版本不能处理所有问题,我会感到惊讶。
要暂时查看消息,请使用 NUnit 3 控制台运行程序。