C# Azure Devops-MSTest-如果我的单元测试失败,但在集成测试失败时继续(发出警告/通知),如何使构建失败

C# Azure Devops-MSTest-如果我的单元测试失败,但在集成测试失败时继续(发出警告/通知),如何使构建失败,c#,visual-studio,unit-testing,azure-devops,mstest,C#,Visual Studio,Unit Testing,Azure Devops,Mstest,我的解决方案中有两种类型的测试。测试我自己的应用程序功能的单元测试,以及测试我的应用程序与外部应用程序/服务交互的集成测试 如果我的单元测试已经建立并且已经运行了一段时间。集成测试是新的,我担心外部系统中的故障会导致我的测试失败,从而导致我的CI/CD管道停止,在外部服务备份之前阻止我部署任何东西。现在,如果我的单元测试失败,那是我的责任,但是如果集成测试失败,则假设外部应用程序/服务已关闭。虽然我确实希望得到通知,但我不希望被阻止让CI/CD管道构建和部署我的更改 因此,我如何使一组测试对我的

我的解决方案中有两种类型的测试。测试我自己的应用程序功能的单元测试,以及测试我的应用程序与外部应用程序/服务交互的集成测试

如果我的单元测试已经建立并且已经运行了一段时间。集成测试是新的,我担心外部系统中的故障会导致我的测试失败,从而导致我的CI/CD管道停止,在外部服务备份之前阻止我部署任何东西。现在,如果我的单元测试失败,那是我的责任,但是如果集成测试失败,则假设外部应用程序/服务已关闭。虽然我确实希望得到通知,但我不希望被阻止让CI/CD管道构建和部署我的更改


因此,我如何使一组测试对我的构建是“强制性”的,而另一组是可选的,并理想地向我发送警告/通知以进行进一步调查,但允许CI/CD管道继续进行。

将其分为两个程序集,并为单独的程序集添加单独的任务。并在集成测试程序集上设置以下选项


将其分为两个程序集,并为单独的程序集添加单独的任务。并在集成测试程序集上设置以下选项


将集成测试拆分为单独的组件。总之,这是一个很好的做法。我同意@DanielMann的观点。然后,一旦有了两个独立的程序集,就在管道中的不同步骤或作业中运行它们。如果集成测试失败,您可以使用条件继续管道,但允许单元测试使整个管道失败。@TxRegex无法获取您的最新信息,我认为上述解决方法是可行的。或者,如果您有任何问题,可以在这里分享。将集成测试拆分为单独的程序集。总之,这是一个很好的做法。我同意@DanielMann的观点。然后,一旦有了两个独立的程序集,就在管道中的不同步骤或作业中运行它们。如果集成测试失败,您可以使用条件继续管道,但允许单元测试使整个管道失败。@TxRegex无法获取您的最新信息,我认为上述解决方法是可行的。或者如果你有任何问题,请在这里分享。