Unit testing vstest.console.exe多次运行相同的测试
这是我用来运行指定库中所有NUnit测试的命令Unit testing vstest.console.exe多次运行相同的测试,unit-testing,vstest,vstest.console.exe,Unit Testing,Vstest,Vstest.console.exe,这是我用来运行指定库中所有NUnit测试的命令 vstest.console.exe“路径到存储库\Tests\terminalBaseTests\bin\debug\terminalBaseTests.dll”/logger:trx/TestAdapterPath:“路径到存储库” 这个dll包含27个测试,但我发现它们出于某种原因启动了3次,结果显示81个测试通过了Demarch在评论中提供了正确的答案,以便于查看,每当其他人遇到这个问题时,我都会在这里陈述(我花了很长时间才弄明白): 症状
vstest.console.exe“路径到存储库\Tests\terminalBaseTests\bin\debug\terminalBaseTests.dll”/logger:trx/TestAdapterPath:“路径到存储库”
这个dll包含27个测试,但我发现它们出于某种原因启动了3次,结果显示81个测试通过了Demarch在评论中提供了正确的答案,以便于查看,每当其他人遇到这个问题时,我都会在这里陈述(我花了很长时间才弄明白): 症状:
当使用NUnit、Xunit或其他testrunner时,VSTest.Console.exe会运行测试两次甚至多次 原因:
TestAdapter的路径设置不正确(例如,设置为$(Build.SourcesDirectory)或不存在。这允许运行程序扫描所有文件夹以查找测试适配器。当存在多个测试时,alltestadapters将启动一个测试运行,导致所有测试运行多次 解决方案: 将testadapter的路径重定向到包所在的文件夹
- 如果从命令行运行,请将VSTest.Console.exe的以下参数设置为类似以下内容:
/TestAdapterPath:“{solutionfolder}\packages”
- 如果在TFS中运行,请打开Visual Studio测试生成步骤的“高级执行选项”部分,并将以下参数设置为类似的值:
$(build.SourcesDirectory)\packages