Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/31.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net 测试失败在Azure DevOps管道中成功运行_Asp.net_Azure Devops_Webforms_Continuous Integration_Azure Pipelines - Fatal编程技术网

Asp.net 测试失败在Azure DevOps管道中成功运行

Asp.net 测试失败在Azure DevOps管道中成功运行,asp.net,azure-devops,webforms,continuous-integration,azure-pipelines,Asp.net,Azure Devops,Webforms,Continuous Integration,Azure Pipelines,我有一个ASP.NET Web表单项目,它托管在Azure DevOps存储库中。源代码管理是TFS 我在Azure Devops中为存储库创建了一个持续集成管道。 以下是管道的图像: 管道中的所有任务都在VSTest TestAssemblies任务旁边正确运行。 我的NUnit测试在本地Visual Studio中失败,因为它应该: 但在运行我的CI时,它会告诉我没有测试失败: 在这里,您可以看到我的设置和VSTest TestAssemblies任务的测试路径: 以下是我的项目的文

我有一个ASP.NET Web表单项目,它托管在Azure DevOps存储库中。源代码管理是TFS

我在Azure Devops中为存储库创建了一个持续集成管道。 以下是管道的图像:

管道中的所有任务都在
VSTest TestAssemblies
任务旁边正确运行。 我的NUnit测试在本地Visual Studio中失败,因为它应该:

但在运行我的CI时,它会告诉我没有测试失败:

在这里,您可以看到我的设置和
VSTest TestAssemblies
任务的测试路径:

以下是我的项目的文件夹结构:

NR.TestAutomation
- NR.TestAutomation
- NR.TestAutomation.Tests
  - bin
  - obj
  - DemoTests.cs
  - NR.TestAutomation.Tests.csproj
- packages
- NR.TestsAutomation.sln

CI运行的输出告诉我,文件夹存在,它甚至找到了测试:

Source filter: **/*Tests/*.cs
SystemVssConnection exists true

vstest.console.exe "D:\a\9\s\NR.TestAutomation.Tests\DemoTests.cs"
为什么我失败的测试在Azure DevOps管道中没有失败?

您应该指定要运行的测试项目的(输出),而不是包含测试的单个文件。测试运行程序无法执行
.cs文件

简言之;失败的测试无法在Azure DevOps管道中成功运行。。。它根本不在管道中运行

测试文件
从指定的文件运行测试。通过分别指定
.orderedtest
.webtest
文件,可以运行有序测试和webtests。要运行
.webtest
,需要Visual Studio 2017 Update 4或更高版本。文件路径相对于搜索文件夹。支持多行最小匹配模式

来源

可能也很有趣:更多关于

编辑:

我的测试的正确源路径是什么

当然,这取决于测试项目的名称。查看屏幕截图,您可以使用
***.Tests.dll
。这将递归地匹配名称以
.Tests.dll
结尾的所有程序集

由于项目名称为
NR.TestAutomation.Tests
,因此程序集应命名为
NR.TestAutomation.Tests.dll
,以便匹配。它还可以用于将来添加测试项目,只要它们的名称以
结尾。Tests

谢谢您的回答,我的测试的正确源路径是什么?