vstest 未获取 googletest 可执行文件中的单元测试
Posted
技术标签:
【中文标题】vstest 未获取 googletest 可执行文件中的单元测试【英文标题】:unit tests in googletest executable not picked up by vstest 【发布时间】:2018-07-19 14:28:57 【问题描述】:我有一个(本机 C++)可执行文件 (test_descriptions.exe),其中包含一些 googletests (1.7)。只需运行可执行文件就可以正常工作,并且可以很好地通过测试。现在我想在 TFS 中使用 vstest
自动运行这些测试。
不幸的是,在我的可执行文件上应用 vstest
会出现以下错误:
C:\project>"C:\Program Files BLABLA \vstest.console.exe" test_descriptions.exe /platform:x64
Warning: Using Isolation mode to run tests as required by effective Platform:X64 and .Net Framework:Framework45 settings for test run. Use the /inIsolation parameter to suppress this warning.
Warning: No test is available in test_descriptions.exe. Make sure that installed test discoverers & executors, platform & framework version settings are appropriate and try again.
有什么想法吗?是否有更好的方法在 TFS 中运行这些测试(我考虑过只构建 RUN_TESTS 项目并让 cmake 的 ctest 完成工作)
编辑:我也尝试添加/UseVsixEntensions:true
,结果相同。
【问题讨论】:
【参考方案1】:原来对 Google 测试适配器的引用丢失了。 /UseVxisEntensions:true
已弃用,现在应该使用 \TestAdapterPath:
设置 Google 测试适配器的 DLL 的位置
【讨论】:
以上是关于vstest 未获取 googletest 可执行文件中的单元测试的主要内容,如果未能解决你的问题,请参考以下文章
VSTest.Console.exe的测试运行结果未与测试计划关联
Specflow - 在 Azure 管道中执行多个测试项目,但 vstests 失败
运行 vstest.console.exe 时如何过滤 NUnit 测试