首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >与VSTest.Console一起运行时,/Logger:Console不会打印来自测试方法的调试输出。

与VSTest.Console一起运行时,/Logger:Console不会打印来自测试方法的调试输出。
EN

Stack Overflow用户
提问于 2017-06-26 19:16:33
回答 1查看 4.5K关注 0票数 8

我正在使用2015。我试图打印一些声明,只是为了跟踪一个非常长的运行测试。当将VSTest.Console与/Logger:trx一起使用时,调试输出(无论是使用Console.WriteLine()、Debug.Writeline()还是Trace.WriteLine())都会进入生成的trx文件。但是,当使用/Logger:Console运行时,自定义调试输出不会显示在控制台输出上:只显示测试结果。我甚至写了我自己的扩展,提到:

https://blogs.msdn.microsoft.com/vikramagrawal/2012/07/26/writing-loggers-for-command-line-test-runner-vstest-console-exe/

但是,尚不清楚如何从测试内部发送TestMessage,以便调用TestMessageHandler并打印输出。

我认为扩展在这里可能是多余的,我可能可以使用控制台记录器,它是Visual扩展的一部分。也许我需要进行一个特定的调用来发送信息消息,或者需要使用适当的命令行开关。

我现在正在使用以下命令:

代码语言:javascript
复制
Vstest.Console.exe <Test dll> /logger:Console

测试运行,但只产生以下输出:

开始测试执行,请等..。通过TestMethod1

考试总数: 1.通过: 1.失败: 0。跳过: 0。测试成功。测试执行时间: 3.3929秒

文件在output部分下包含了console.writeline()和debug.trace()输出的以下部分:(下面显示的文本只是为了示例)

代码语言:javascript
复制
<Output>
    <StdOut>
    Test Started
    Test Ended
    Debug Trace:
    Test started
    Test ended
    </StdOut>
</Output>

我想知道在使用控制台记录器时是否也可以显示相同的信息。

EN

回答 1

Stack Overflow用户

发布于 2017-12-20 18:27:28

这种行为现在在VS 2017 15.5.2+中发生了变化,现在它会发出输出。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/44767110

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档