TeamCity 构建配置,允许 NUnit 和 xUnit 测试



我们有一个包含大约 20 个项目的解决方案文件,其中大约一半是测试项目。直到最近,我们只使用 NUnit,但现在我们也开始引入 xUnit(出于与问题无关的原因)。总共有大约 1800 个测试,因此一次性移植它们不是一种选择 - 我们必须混合使用 TeamCity CI/CD 管道将 NUnit 和 xUnit 混合使用。

在将 xUnit 构建配置步骤添加到 TeamCity 项目之前,我签入并推送了一个提交,该提交在新项目中添加了一些 xUnit 测试。这使得 NUnit 步骤失败,日志输出位于问题底部,并且 - 重要的是 - 即使对于剩余的 NUnit 程序集,测试也中止运行

如何将 TeamCity 配置为从同一组程序集运行 NUnit 和 xUnit 测试,而忽略找不到测试的程序集?

按承诺记录输出:

Starting: C:TeamCity- Agentworkcecd2801408764e0packagesNUnit.ConsoleRunner.3.7.0toolsnunit3-console.exe C:TeamCity-AgenttempbuildTmpbBDbo6pa0lGnLMZYjY7WcvIGUDDIvWI7.nunit --result=C:TeamCity-AgenttempbuildTmpbBDbo6pa0lGnLMZYjY7WcvIGUDDIvWI7.nunit.xml --noheader --framework=net-4.0
[11:08:59]  [Step 4/4] in directory: C:TeamCity-Agentworkcecd2801408764e0My.xUnit.TestsbinRelease
[11:08:59]  [Step 4/4] Runtime Environment
[11:08:59]  [Step 4/4] OS Version: Microsoft Windows NT 6.3.9600.0
[11:08:59]  [Step 4/4] CLR Version: 4.0.30319.42000
[11:08:59]  [Step 4/4]
[11:08:59]  [Step 4/4] Test Files
[11:08:59]  [Step 4/4] C:TeamCity-AgenttempbuildTmpbBDbo6pa0lGnLMZYjY7WcvIGUDDIvWI7.nunit
[11:08:59]  [Step 4/4]
[11:09:00]  [Step 4/4]
[11:09:00]  [Step 4/4] Errors, Failures and Warnings
[11:09:00]  [Step 4/4]
[11:09:00]  [Step 4/4] 1) Invalid : C:TeamCity-Agentworkcecd2801408764e0My.xUnit.TestsbinReleaseMy.xUnit.Tests.dll
[11:09:00]  [Step 4/4] No suitable tests found in 'C:TeamCity-Agentworkcecd2801408764e0My.xUnit.TestsbinReleaseMy.xUnit.Tests.dll'.
[11:09:00]  [Step 4/4] Either assembly contains no tests or proper test driver has not been found.
[11:09:00]  [Step 4/4]
[11:09:00]  [Step 4/4] Test Run Summary
[11:09:00]  [Step 4/4] Overall result: Failed
[11:09:00]  [Step 4/4] Test Count: 0, Passed: 0, Failed: 0, Warnings: 0, Inconclusive: 0, Skipped: 0
[11:09:00]  [Step 4/4] Start time: 2017-10-31 10:08:59Z
[11:09:00]  [Step 4/4] End time: 2017-10-31 10:09:00Z
[11:09:00]  [Step 4/4] Duration: 0.494 seconds
[11:09:00]  [Step 4/4]
[11:09:00]  [Step 4/4] Results (nunit3) saved as C:TeamCity-AgenttempbuildTmpbBDbo6pa0lGnLMZYjY7WcvIGUDDIvWI7.nunit.xml
[11:09:00]  [Step 4/4] Process exited with code -2
可以通过向

"其他命令行参数"部分添加--skipnontestassemblies来将 NUnit 配置为跳过不进行测试的程序集。

最新更新