NUnit 中的跟踪仅在从 Visual Studio 进行调试时有效
我想将跟踪信息显示到 NUnit GUI(版本 2.5.7,目标运行时 4.0)中的“文本输出”选项卡中:
Trace.Listeners.Add(new ConsoleTraceListener());
Trace.WriteLine("Hello NUnit");
当我通过“调试”->“从 Visual Studio (2010)”启动 NUnit GUI 时,效果很好。启动外部应用程序。
但是,当来自 .nunit 项目文件和控制台运行程序时,则不然。为什么??
I want to display trace info into Text Output tab in NUnit GUI (ver. 2.5.7, target runtime 4.0):
Trace.Listeners.Add(new ConsoleTraceListener());
Trace.WriteLine("Hello NUnit");
This works fine when I launch NUnit GUI from Visual Studio (2010) via Debug -> Start external application.
But when from .nunit project file and console runner - don't. Why??
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
我没有找到解决方案,而是找到了原因。
我有
MyProject.Test.dll
(包含测试本身)和MyProject.dll
(测试目标)。当我在
MyProject.dll
中使用Trace.WriteLine()
时,期望出现在 NUnit 中,但它令我失望并失败。但是当我在
MyProject.Test.dll
中使用Trace.WriteLine()
时 - 它可以工作。但这没有什么意义,因为我需要跟踪目标本身来确定测试失败的原因而不需要重写。因此,我们很高兴了解在目标中使用跟踪并通过测试显示它的解决方案。
I found not a solution but the reason.
I have
MyProject.Test.dll
(contains tests itself) andMyProject.dll
(the target of tests).When I use
Trace.WriteLine()
inMyProject.dll
expecting appearance in NUnit it disappoints me and fails.But when I use
Trace.WriteLine()
exactly inMyProject.Test.dll
- it works. But this makes less sense because I need to trace the target itself to determine the reason of test fail without rewriting.So will be happy to get know a solution to use trace in target and display it via test.