VSTest-testAssemblies 代理不是 运行 我的 Azure Pipelines 中 NUnit 框架的类别搜索过滤器

VSTest-testAssemblies agent is not running my Category search filter for NUnit framework in Azure Pipelines

我在测试过滤器标准中使用 TestCategory=CategoryA 在我的测试中,我保存了以下内容,并认为它应该是唯一的测试 运行 但我成功了,没有测试 运行。我尝试过 dotnet test 并在参数中使用了相同的方法,但由于其他问题而失败。我可以在不为 VS 测试代理添加任何参数的情况下对 运行 进行点网测试,即使我不添加测试筛选条件,它似乎也不想 运行。

        [Test]
    [Category("CategoryA")]
   
    public async Task ActivateDevice()

2022-02-18T20:14:54.5643568Z ##[部分]开始:VsTest - testAssemblies 2022-02-18T20:14:54.5771277Z ======================================== ====================================== 2022-02-18T20:14:54.5771649Z 任务:Visual Studio 测试 2022-02-18T20:14:54.5772497Z 描述:运行 单元和功能测试(Selenium、Appium、Coded UI 测试等)使用 Visual Studio 测试 (VsTest) 运行纳尔。具有 Visual Studio 测试适配器的测试框架,例如 MsTest、xUnit、NUnit、Chutzpah(用于使用 QUnit、Mocha 和 Jasmine 的 JavaScript 测试)等,可以是 运行。可以使用此任务(版本 2)在多个代理上分发测试。 2022-02-18T20:14:54.5773342Z 版本:2.198.0 2022-02-18T20:14:54.5773587Z 作者:微软公司 2022-02-18T20:14:54.5773921Z 帮助:https://docs.microsoft.com/azure/devops/pipelines/tasks/test/vstest 2022-02-18T20:14:54.5774333Z ======================================== ====================================== 2022-02-18T20:14:55.5713320Z SystemVssConnection 存在 true 2022-02-18T20:14:55.5732257Z SystemVssConnection 存在 true 2022-02-18T20:14:55.5991193Z 运行ning 测试使用 vstest.console.exe 运行ner。 2022-02-18T20:14:55.5991725Z ======================================== ============== 2022-02-18T20:14:55.5997078Z 测试选择器:测试组件 2022-02-18T20:14:55.5998382Z 测试过滤条件:null 2022-02-18T20:14:55.5999337Z 搜索文件夹:D:\a\r1\a 2022-02-18T20:14:55.6102675Z 未达到最低测试阈值时的操作:不执行任何操作 2022-02-18T20:14:55.6103140Z 预计的最低测试为 运行:0 2022-02-18T20:14:55.6104476Z 选择执行测试的 VisualStudio 版本:最新 2022-02-18T20:14:55.6107744Z 试图从 visual studio 安装版本 [17.0,18.0) 中查找 vstest.console。 2022-02-18T20:14:56.0357719Z 尝试从版本为 [17.0,18.0) 的 visual studio 构建工具安装中查找 vstest.console。 2022-02-18T20:14:56.0642271Z 试图从 visual studio 安装版本 [16.0,17.0) 中查找 vstest.console。 2022-02-18T20:14:56.0884398Z 尝试从 visual studio 版本 [16.0,17.0) 的构建工具安装中查找 vstest.console。 2022-02-18T20:14:56.1142098Z 试图从 visual studio 安装版本 [15.0,16.0) 中查找 vstest.console。 2022-02-18T20:14:56.3498931Z 运行 并行:假 2022-02-18T20:14:56.3500994Z 运行 隔离:假 2022-02-18T20:14:56.3502074Z 自定义适配器的路径:空 2022-02-18T20:14:56.3504871Z 其他控制台选项:空 2022-02-18T20:14:56.3505911Z 启用代码覆盖率:false 2022-02-18T20:14:56.3510216Z 已启用诊断:错误 2022-02-18T20:14:56.3519771Z SystemVssConnection 存在 true 2022-02-18T20:14:56.3697972Z 运行 使用 vstest.console.exe 在本地进行测试 2022-02-18T20:14:56.3698460Z ======================================== ================ 2022-02-18T20:14:56.5771570Z 源过滤器:D:\a\r1\a/_Test.AppiumTest/AppiumTesting/AppiumTest 2022-02-18T20:14:56.5973322Z ##[警告]找不到与给定过滤器匹配的测试源

1.检查是否安装了以下最新包:

Microsoft.NET.Test.Sdk
MSTest.TestAdapter
MSTest.TestFramework
NUnit3TestAdapter

2. 正如 Marina Liu 回答的那样,如果出现警告,您可以将 MSTest 或 VSO 中的“Visual Studio 测试”任务配置为失败:
a. 在 Visual Studio 测试任务后添加一个 PowerShell 任务。

b.然后通过Timeline:

获取Visual Studio测试任务构建信息

c.按任务名称或任务显示名称搜索Visual Studio测试任务信息。

d. 如果 VS 测试有您指定的警告,则构建结果失败。

参考文献: , and Run NUnit tests in Azure DevOps pipeline