vstest.console.exe未生成trx文件,TestResults为空。

5
我正在尝试在我的构建服务器上运行以下命令:
c:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\IDE\CommonExtensions\Microsoft\TestWindow\vstest.console.exe" 
"C:\UnitTest\MyTests.dll"
 /settings:"C:\UnitTest\output.runsettings" 
 /UseVsixExtensions:"true" 
 /InIsolation 
 /Logger:"trx"



<?xml version="1.0" encoding="UTF-8"?>
<RunSettings>
  <RunConfiguration>
    <ResultsDirectory>.\TestResults</ResultsDirectory>
  </RunConfiguration>
</RunSettings>

它会生成一个名为TestResults的文件夹,该文件夹为空,但没有任何TRX文件。

更新: 从命令行获取以下警告。但是在我的本地机器上运行命令时看不到它。我在我的测试项目中漏掉了什么吗?

警告: C:\ UnitTest \ MyTests.dll中没有可用的测试。确保已安装的测试发现程序和执行程序、平台和框架版本设置正确,并重试。**


输出内容是什么?其中应该有一行类似于“结果文件:...”的内容。 - Christian.K
我正在使用进程运行此命令的自定义实用程序进行操作。但是让我看看是否可以捕获命令输出。我会回复你的。 - rajcool111
我从命令行得到以下输出: - rajcool111
警告:C:\UnitTest\MyTests.dll 中没有可用的测试。请确保已安装的测试发现器和执行器、平台和框架版本设置是适当的,然后重试。 - rajcool111
这可能是您未能获得TRX文件的原因:没有找到(或执行)任何测试。 - Christian.K
是的,我想你给了我提示。现在已经修复了,我已经更新了我的答案。谢谢! - rajcool111
1个回答

2

经过一些研究,我发现需要为Visual Studio传递测试适配器,以使测试能够被发现。

/TestAdapterPath:"packages\xunit.runner.visualstudio.0.99.2

以下是完整的命令:

    c:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\IDE\CommonExtensions\Microsoft\TestWindow\vstest.console.exe" 
/TestAdapterPath:"packages\xunit.runner.visualstudio.0.99.2" "C:\UnitTest\MyTests.dll"
 /settings:"C:\UnitTest\output.runsettings" 
 /UseVsixExtensions:"true" 
 /InIsolation 
 /Logger:"trx"

对于xunit视觉化工具适配器,有一个可用的nuget软件包"xunit.runner.visualstudio.0.99.2"。


我曾遇到同样的问题,这解决了我的问题。谢谢! - Teoman shipahi

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接