我正在使用TeamCity构建我的.NET Core项目,并使用xunit dotnet test
来运行测试。
如果任何测试失败,我的构建配置为失败,如果测试失败,这可以正常工作,但是当测试项目不编译时,退出代码最终为零。
我相信这是因为我在包含测试目录的文件夹中运行dotnet test
,如下所示:for /f %%%a in ('dir /b /s project.json') do dotnet test %%%a
。
查看日志我可以看到不编译的单个作业返回退出代码1,但构建步骤本身返回退出代码0。
如何使失败的编译尝试中的退出代码传播到构建步骤?
答案 0 :(得分:2)
您可以在TC中创建一个单独的步骤来编译目标测试项目,然后在下一步中运行没有编译的测试(使用no-build选项)(如果之前的所有步骤都成功)。
--no-build
Does not build the test project prior to running it.