首页 > 解决方案 > 使用 Regex 在 Azure DevOps 构建管道上选择测试项目

问题描述

我试图根据路径中存在的关键字跳过一些测试,我想跳过测试的词是 GDS(不区分大小写)

我在管道中的 .net 核心测试步骤中的项目路径中使用它:

**/*(?!([Gg][Dd][Ss]))([Tt]est.*)/*.csproj

但它不起作用,它总是在管道中冻结,就好像它在等待输入一样!

以下是项目文件名的一些示例:

api.tests.csproj //valid
someOthers.tests.csproj //valid

GDS.tests.csproj //not valid (skip)

标签: azure-devopsazure-pipelinesglob

解决方案


根据文档Azure DevOps 任务不支持正则表达式。

您可以使用一个fnmatch模式:

  • *匹配零个或多个字符。
  • ?匹配任何单个字符。
  • []匹配一组或范围的字符。
  • **递归通配符。

您可以查看上述文档链接以获取示例以及扩展语法。


推荐阅读