Cypress如何指定运行多文件中特定测试并给测试打tier分级标签
Cypress 测试打分级标签与筛选运行方案
1. 标注 tier 分级标签
Cypress v13及以上版本原生支持标签能力,无需额外安装插件,可直接给测试用例/测试套件打标签:
- 单测试用例打标签
// 标注 tier1 标签 it('登录功能校验', { tags: '@tier1' }, () => { // 测试逻辑代码 }) // 给单个用例打多个标签 it('支付全流程校验', { tags: ['@tier1', '@financial'] }, () => { // 测试逻辑代码 })
- 测试套件批量打标签
套件下所有测试用例都会继承该标签,无需逐个标注:
// 整个订单模块的用例都标注为 tier2 describe('订单模块测试', { tags: '@tier2' }, () => { it('订单创建', () => { /* 逻辑 */ }) it('订单查询', () => { /* 逻辑 */ }) it('订单取消', () => { /* 逻辑 */ }) })
若使用 v13 以下版本的 Cypress,需先安装
@cypress/grep依赖,再在配置文件中引入插件,后续标签使用规则与下方一致。
2. 按标签筛选运行测试
2.1 命令行运行模式
- 仅运行 tier1 标签的所有用例:
npx cypress run --env grepTags=@tier1 - 同时运行 tier1 和 tier2 标签的所有用例:
npx cypress run --env grepTags="@tier1 @tier2" - 运行除 tier3 之外的所有用例:
npx cypress run --env grepTags=-@tier3
2.2 交互式界面运行模式
传入标签参数后打开 Cypress 界面,仅会展示符合标签要求的测试用例:npx cypress open --env grepTags=@tier1
3. 多文件指定运行特定测试
可以通过 --spec 参数指定要运行的测试文件,还可以和标签筛选能力组合使用:
- 运行单个指定测试文件:
npx cypress run --spec cypress/e2e/login.cy.js - 运行多个指定测试文件,路径之间用逗号分隔:
npx cypress run --spec cypress/e2e/login.cy.js,cypress/e2e/order.cy.js - 运行指定目录下的所有测试文件:
npx cypress run --spec cypress/e2e/pay/**/*.cy.js - 仅运行指定文件中 tier1 标签的用例:
npx cypress run --spec cypress/e2e/order.cy.js --env grepTags=@tier1 - 按用例标题精准匹配运行,不需要标签也可以直接筛选:
npx cypress run --env grep="支付全流程校验"
内容的提问来源于stack exchange,提问作者linuxuser26
相关产品推荐
相关产品推荐

