You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Azure DevOps中DotNetCoreCLI@2 Test任务参数配置问题求助

解决Azure DevOps中DotNetCoreCLI测试任务的参数配置问题

错误原因

你遇到的"One or more runsettings provided contain invalid token"错误,核心是参数分隔逻辑错误:

  • dotnet test里的--是dotnet命令参数和测试运行器(如xunit)参数的分界符
  • 你把数据收集器配置、测试过滤参数混在了--两侧,导致解析失败
  • --filter是dotnet test原生参数,不需要放到--后面

正确配置方案

以下是修正后的任务配置,同时实现禁用xunit并行、测试类别过滤的需求:

- task: DotNetCoreCLI@2
  displayName: 'Unit Tests'
  inputs:
    command: 'test'
    arguments: '--configuration ${{ parameters.buildConfiguration }} --no-build --filter TestCategory!=Ignore --collect:"XPlat Code Coverage" -- DataCollectionRunSettings.DataCollectors.DataCollector.Configuration.Format=cobertura,opencover xunit.parallelizeAssembly=false xunit.parallelizeTestCollections=false'
    publishTestResults: true
    projects: '$(Agent.BuildDirectory)\s\$(Build.Repository.Name)\*.sln'

关键配置说明

  1. 测试类别过滤:--filter TestCategory!=Ignore直接作为dotnet test的参数,放在--collect之前,无需嵌套到--后面
  2. 数据收集器配置:--collect:"XPlat Code Coverage"之后用--分隔,后面紧跟数据收集器的格式配置
  3. 禁用xunit并行:在--后添加xunit.parallelizeAssembly=false,如果需要彻底禁用并行,再加xunit.parallelizeTestCollections=false(禁止测试集合级并行)

额外验证点

如果本地项目已配置禁用并行但流水线不生效,大概率是流水线使用的测试运行器版本覆盖了项目配置,通过上述参数强制指定可确保生效。

内容的提问来源于stack exchange,提问作者Rayane Hindi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.21 01:51:06