允许 NUnit 和 xUnit 测试的 TeamCity 构建配置
TeamCity build config that allows for both NUnit and xUnit tests
我们有一个包含大约 20 个项目的解决方案文件,其中大约一半是测试项目。直到最近,我们还专门使用 NUnit,但现在我们也开始引入 xUnit(出于与问题无关的原因)。总共有大约 1800 个测试,因此一次性移植它们不是一种选择 - 我们必须将 NUnit 和 xUnit 与我们的 TeamCity CI/CD 管道混合使用。
甚至在将 xUnit 构建配置步骤添加到 TeamCity 项目之前,我签入并推送了一个在新项目中添加了一些 xUnit 测试的提交。这使得 NUnit 步骤失败并在问题的底部输出日志,并且 - 重要的是 - 中止测试 运行ning 即使对于剩余的 NUnit 程序集.
如何将 TeamCity 配置为 运行 来自同一组程序集的 NUnit 和 xUnit 测试,忽略没有找到测试的程序集?
按照承诺记录输出:
Starting: C:\TeamCity- Agent\work\cecd2801408764e0\packages\NUnit.ConsoleRunner.3.7.0\tools\nunit3-console.exe C:\TeamCity-Agent\temp\buildTmp\bBDbo6pa0lGnLMZYjY7WcvIGUDDIvWI7.nunit --result=C:\TeamCity-Agent\temp\buildTmp\bBDbo6pa0lGnLMZYjY7WcvIGUDDIvWI7.nunit.xml --noheader --framework=net-4.0
[11:08:59] [Step 4/4] in directory: C:\TeamCity-Agent\work\cecd2801408764e0\My.xUnit.Tests\bin\Release
[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-Agent\temp\buildTmp\bBDbo6pa0lGnLMZYjY7WcvIGUDDIvWI7.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-Agent\work\cecd2801408764e0\My.xUnit.Tests\bin\Release\My.xUnit.Tests.dll
[11:09:00] [Step 4/4] No suitable tests found in 'C:\TeamCity-Agent\work\cecd2801408764e0\My.xUnit.Tests\bin\Release\My.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-Agent\temp\buildTmp\bBDbo6pa0lGnLMZYjY7WcvIGUDDIvWI7.nunit.xml
[11:09:00] [Step 4/4] Process exited with code -2
您可以通过将 --skipnontestassemblies
添加到 "Additional command line parameters" 部分来配置 NUnit 跳过没有测试的程序集。
我们有一个包含大约 20 个项目的解决方案文件,其中大约一半是测试项目。直到最近,我们还专门使用 NUnit,但现在我们也开始引入 xUnit(出于与问题无关的原因)。总共有大约 1800 个测试,因此一次性移植它们不是一种选择 - 我们必须将 NUnit 和 xUnit 与我们的 TeamCity CI/CD 管道混合使用。
甚至在将 xUnit 构建配置步骤添加到 TeamCity 项目之前,我签入并推送了一个在新项目中添加了一些 xUnit 测试的提交。这使得 NUnit 步骤失败并在问题的底部输出日志,并且 - 重要的是 - 中止测试 运行ning 即使对于剩余的 NUnit 程序集.
如何将 TeamCity 配置为 运行 来自同一组程序集的 NUnit 和 xUnit 测试,忽略没有找到测试的程序集?
按照承诺记录输出:
Starting: C:\TeamCity- Agent\work\cecd2801408764e0\packages\NUnit.ConsoleRunner.3.7.0\tools\nunit3-console.exe C:\TeamCity-Agent\temp\buildTmp\bBDbo6pa0lGnLMZYjY7WcvIGUDDIvWI7.nunit --result=C:\TeamCity-Agent\temp\buildTmp\bBDbo6pa0lGnLMZYjY7WcvIGUDDIvWI7.nunit.xml --noheader --framework=net-4.0
[11:08:59] [Step 4/4] in directory: C:\TeamCity-Agent\work\cecd2801408764e0\My.xUnit.Tests\bin\Release
[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-Agent\temp\buildTmp\bBDbo6pa0lGnLMZYjY7WcvIGUDDIvWI7.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-Agent\work\cecd2801408764e0\My.xUnit.Tests\bin\Release\My.xUnit.Tests.dll
[11:09:00] [Step 4/4] No suitable tests found in 'C:\TeamCity-Agent\work\cecd2801408764e0\My.xUnit.Tests\bin\Release\My.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-Agent\temp\buildTmp\bBDbo6pa0lGnLMZYjY7WcvIGUDDIvWI7.nunit.xml
[11:09:00] [Step 4/4] Process exited with code -2
您可以通过将 --skipnontestassemblies
添加到 "Additional command line parameters" 部分来配置 NUnit 跳过没有测试的程序集。