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

Azure Pipeline条件与变量正确用法:特定文件夹变更触发测试

基于SAP Piper模板的Azure Pipelines条件执行测试优化方案

不用写PowerShell脚本检测变更,直接用Azure Pipelines内置的路径判断能力就能实现,更简洁高效:

方法1:任务级条件控制(推荐)

在执行测试的Maven任务中,直接通过condition结合内置的changes函数判断指定路径是否有变更,精准控制任务执行:

- task: Maven@3
  displayName: '运行API测试框架的JUnit测试'
  inputs:
    mavenPomFile: 'api-test-framework/pom.xml'
    goals: 'test'
  condition: |
    and(
      succeeded(),
      changes('src/test/java/base/specificfolder/**')
    )

如果需要主干分支强制执行测试,可扩展条件:

condition: |
  and(
    succeeded(),
    or(
      eq(variables['Build.SourceBranch'], 'refs/heads/main'),
      changes('src/test/java/base/specificfolder/**')
    )
  )

方法2:路径触发器(可选)

如果希望只有当指定路径变更时才触发整个流水线(或对应阶段),可在流水线根节点配置paths规则:

trigger:
  branches:
    include:
      - main
      - develop
  paths:
    include:
      - src/test/java/base/specificfolder/**
    exclude:
      - README.md
      - docs/**

这种方式适合仅需路径变更时才启动流水线的场景,若要保留全量触发但仅跳过测试任务,优先用方法1。

适配SAP Piper模板的注意事项

SAP Piper模板兼容标准Azure Pipelines语法,直接在模板引用的测试任务块中添加上述condition即可,无需修改模板核心逻辑。


内容的提问来源于stack exchange,提问作者Antonia Banderas

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.26 04:22:38