我目前遇到以下问题:
我们通过使用 Visual Studio 2015 中包含的本机 microsoft 单元测试框架将单元测试引入我们的本机 c++ 应用程序Microsoft::VisualStudio::CppUnitTestFramework
。
要在 Visual Studio 中启动单元测试,我们使用如图Test-Explorer
1 所示。通过将 a 添加method attribute
到 a Test-Method
(如图 2 所示),Test-Explorer
允许按属性排序和过滤(如图 3 所示)。
所有这些都没有问题。当我们尝试将这些单元测试实施到我们的持续集成系统 (CI) 中时,我们开始遇到问题。
要从我们使用的控制台启动单元测试,该控制台vstest.console.exe
位于:C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE\CommonExtensions\Microsoft\TestWindow\vstest.console.exe
. 官方文档可以在这里找到。
添加记录器并将文件输出到 .trx 也很有效。然而,不起作用的是应用过滤器来确定具有特定属性的测试。/TestCaseFilter:
根据文档,使用-switch应该可以实现类似的操作。但是,以下屏幕截图显示了由此产生的错误:
它转换为:“没有与过滤器匹配的测试,因为它包含一个或多个无效属性 (TakesLong)。指定包含有效属性 (TestCategory、Priority、FullyQualifiedName、Name) 的过滤器表达式,然后重试。”
有人知道这个问题或对如何解决这个问题有想法吗?最终目标是能够排除某些测试(需要很长时间/需要硬件加密狗等)。
最好的问候, 洛托索