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

如何在CircleCI Cypress Orb中使用cypress-tags运行按标签过滤的测试

可行解决方案

方案1:自定义运行命令并补全并行参数

你之前直接调用自定义脚本并行失效,是因为没有把Orb默认附带的并行、上报、分组参数传入自定义命令,补全参数后即可正常使用:

  1. 先修改package.json中的测试脚本,保留通用配置,动态接收后续传入的参数:
"test:tags": "cypress-tags run --headless -b chrome"
  1. 调整CircleCI配置,在自定义命令中补全所有需要的参数:
- cypress/run:
    name: e2e tests
    executor: with-chrome
    parallelism: 2
    command: npm run test:tags -- -e TAGS='@usa' --record --parallel --group '2x-chrome' --ci-build-id '${CIRCLE_BUILD_NUM}' --tag 'on-pr'
    requires:
      - org/deployment

方案2:别名替换cypress执行命令(无侵入兼容原有Orb配置)

该方案不需要修改原有Orb的配置项,仅需要新增一个轻量的执行脚本即可:

  1. 在项目根目录新建名为cypress的可执行脚本,内容如下:
#!/usr/bin/env bash
cypress-tags "$@"
  1. 给脚本添加执行权限:
    chmod +x ./cypress
  2. 调整CircleCI配置,将当前目录加入环境变量PATH的最优先级,同时传入TAGS环境变量即可:
- cypress/run:
    name: e2e tests
    executor: with-chrome
    record: true
    parallel: true
    parallelism: 2
    tags: 'on-pr'
    group: 2x-chrome
    ci-build-id: '${CIRCLE_BUILD_NUM}'
    environment:
      PATH: ./:./node_modules/.bin:$PATH
      TAGS: '@usa'
    requires:
      - org/deployment

该方案下Orb默认调用的cypress run命令会自动被替换为cypress-tags run,所有原有配置的并行、分组、上报逻辑都可以正常生效。

两种方案均可以满足你使用cucumber标签过滤用例的需求,不需要更换整套测试方案。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.22 03:45:04