为什么dotnet测试project.csproj --filter category = unit在Azure DevOps中失败?

问题描述 投票:1回答:1

我有我的解决方案,它是在Azure DevOps中构建的。由于解决方案具有单元和集成测试,因此我需要进行过滤以避免始终编辑构建定义。在我的笔记本电脑上,以下命令运行正常,只执行我需要的测试。

dotnet test project.csproj --filter Category=Unit

但是,它在Azure DevOps中失败并显示以下消息。

[command]/usr/bin/dotnet test --filter Category=Unit {...}/{...}.Tests.csproj --configuration Release
No executable found matching command "dotnet-test --filter Category=Unit"
##[error]Error: /usr/bin/dotnet failed with return code: 1

测试项目有以下nuget包:

<ItemGroup>
        <PackageReference Include="FluentAssertions" Version="5.6.0" />
        <PackageReference Include="FluentValidation" Version="8.2.3" />
        <PackageReference Include="Microsoft.CodeAnalysis.FxCopAnalyzers" Version="2.9.1" />
        <PackageReference Include="Microsoft.EntityFrameworkCore" Version="2.2.4" />
        <PackageReference Include="Microsoft.EntityFrameworkCore.Sqlite" Version="2.2.4" />
        <PackageReference Include="Microsoft.NET.Test.Sdk" Version="16.0.1" />
        <PackageReference Include="xunit" Version="2.4.1" />
        <PackageReference Include="xunit.analyzers" Version="0.10.0" />
        <PackageReference Include="xunit.runner.console" Version="2.4.1" />
        <PackageReference Include="xunit.runner.visualstudio" Version="2.4.1" />
    </ItemGroup>

构建设置:enter image description here

azure-devops xunit xunit.net
1个回答
1
投票

您不需要自定义命令,只需将Command字段更新为Test并将参数标志移动到Arguments

enter image description here

© www.soinside.com 2019 - 2024. All rights reserved.