显示在Visual Studio中未测试的测试参数输入值

时间:2019-05-27 11:57:34

标签: visual-studio testing

是否有一种方法可以使Visual Studio(2017 Enterprise)显示启动测试所使用的所有输入参数值?

在输出窗口中,一定长度后只有三个点,就像在“测试资源管理器”中一样(我必须将其拖到2个监视器上才能看到,并且“全部复制”按钮应命名为“复制一些”。)

现在我在输出和测试资源管理器中看到了

27/05/2019 12:55:29 Error] [xUnit.net 00:00:03.9604849]     SomeNamespace.SomeTestName(sut: SomeClass { }, someString: "spz5cf1f13d-6e3f-4f86-9a6a-5bc4cf9d0fca", foo: Foo { SomeBool = True, SomeId = 138, SomeString = "Duvodf6d90c61-f090-4f22-9e2e-37e2062bb848", SomeString = "ESSKa62ce76d-d56a-40d8-904a-fef1884ac86a", ExtensionData = null, ... }) [FAIL]

我想查看Foo类中的所有值,而不是“ ...”。

我在VS中尝试了“测试”选项,但是其中没有任何影响(包括日志记录级别)。

测试输入由AutoFixture生成。有时测试通过,有时失败。 另外,它是集成测试,它与Web服务联系,不会引发非常好的异常,并且基本上只是告诉我“错在哪里”。 如果我在调试器中调用测试的次数足够多,我将给出示例或输入失败,但是应该有一种更简单的方法。

1 个答案:

答案 0 :(得分:0)

显然,您需要在测试参数中实现ToString。有问题的Foo类是DTO生成的,某些组件(xUnit?)通过有限长度的反射来生成其字符串表示形式,并在测试浏览器和输出窗口中显示。

一旦实现了正确的ToString,Test Explorer仍会显示简短的文本,但是“输出”窗口将包含ToString的整个结果。