完全按照" Writing to output window of Visual Studio?"的要求,然而解决剩余问题 -
我认为如果我没有调试(ctrl-f5)就开始没有办法写输出吗? - previous_developer 2月27日' 12
Debug.WriteLine()仅在Debug中运行时才有效。这意味着使用F5而不是CTRL-F5运行它。 - kirk.burleson 7月15日' 13
但事实并非如此,因为:
刚刚在这里运行了一个小应用程序,对我来说很好。也许你的环境有一个小问题? - Bhargav Bhat 2月27日' 12
我可以在正常运行期间看到在Visual Studio输出窗口中打印的一些信息:
[1/10/2018 11:56:25 AM Informational] ------ Run test started ------
[1/10/2018 11:56:26 AM Informational] NUnit Adapter 3.9.0.0: Test execution started
[1/10/2018 11:56:26 AM Informational] Running selected tests in ...\Demo.dll
[1/10/2018 11:56:26 AM Informational] NUnit3TestExecutor converted 14 of 14 NUnit test cases
[1/10/2018 11:56:45 AM Informational] NUnit Adapter 3.9.0.0: Test execution complete
[1/10/2018 11:56:45 AM Informational] ========== Run test finished: 1 run (0:00:19.3066647) ==========
要在调试模式下运行,NUnit调试输出将如下所示:
[1/10/2018 2:56:55 PM Informational] ------ Run test started ------
[1/10/2018 2:56:56 PM Informational] NUnit Adapter 3.9.0.0: Test execution started
[1/10/2018 2:56:56 PM Informational] Debugging selected tests in ...\Demo.dll
[1/10/2018 2:56:57 PM Informational] NUnit3TestExecutor converted 14 of 14 NUnit test cases
[1/10/2018 3:03:38 PM Informational] NUnit Adapter 3.9.0.0: Test execution complete
[1/10/2018 3:03:38 PM Informational] ========== Run test finished: 1 run (0:06:43.6161412) ==========
即无论正常运行还是在调试模式下,NUnit Adapter都能够写入Visual Studio输出窗口,区别仅在于文本" 运行选定的测试&#34 ;或" 调试选定的测试"
因此,以下是调试输出案例在正常运行期间,未处于调试模式的摘要:
Debug.WriteLine
和Trace.WriteLine
都可以正常工作。我已经创建并验证了这一点:https://pastebin.com/Du6ZbDV3 Debug.WriteLine
和Trace.WriteLine
都不起作用。示例:https://pastebin.com/b7P0bYEa。 " 这很简单,但仍然没有 - 前一个开发人员2月27日' 12 "。Debug.WriteLine
和Trace.WriteLine
都不起作用。我经常跑过几次,可以证实这一点。我不会在这里发布我的测试代码,因为它很长而且很长。需要大量的库来工作,而且,它是由与https://pastebin.com/b7P0bYEa相同的故障引起的。 总而言之,如何从类lib或win表单写入Visual Studio输出窗口?
答案 0 :(得分:3)
要同时使用Debug.WriteLine
和Trace.WriteLine
,我们需要添加using System.Diagnostics
,这只有在调试时才有效(F5)。即使是 C#控制台项目,我们仍然无法在没有调试的情况下(Ctrl + F5)输出Debug.WriteLine
和Trace.WriteLine
,以查看我们必须在< strong>调试(F5)。
对于类库项目,它可以仅构建或编译,我认为我们不能启动或运行它,因为它不是控制台项目,除非它已在控制台项目中调用。
<强>更新强>
要调试类库项目并显示其输出,我在VS的解决方案中添加了一个单元测试。 我的类库代码:
namespace ClassLibrary1
{
public class hello
{
public static void foo()
{
Console.WriteLine("Hi, this is a console writeline");
Debug.WriteLine("Hi, this is a Debug writeline");
}
}
}
在单元测试项目中,我将ClassLibrary1添加到Reference
我的联合测试项目代码很简单:
using System;
using Microsoft.VisualStudio.TestTools.UnitTesting;
using ClassLibrary1;
namespace UnitTestProject3
{
[TestClass]
public class UnitTest1
{
[TestMethod]
public void TestMethod1()
{
hello.foo();
}
}
}