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

如何按指定流程执行Cucumber Feature文件中的测试场景?

解决方案:调整Cucumber Feature实现指定执行顺序

嘿,我来帮你搞定这个测试用例的执行顺序问题!要实现先处理QGOL2B批次的两个文档验证,返回主页后再处理QGK3UB批次的两个文档的流程,我们可以通过两种方式来实现,既保证逻辑清晰又符合Cucumber的语法规范。

方案一:用Scenario Outline+条件逻辑(简洁高效)

这种方式通过共享前置步骤和批量生成用例,同时加入简单的逻辑判断来控制返回时机,适合追求用例简洁性的场景:

Background: 复用前置操作
  Given 用户处于QueueHandling主页仪表盘
  And 用户已被分配批次

Scenario Outline: 按顺序验证指定批次的文档数据
  When 用户从批次列表中选择"<batchName>"批次
  Then 选中的批次在新窗口打开
  And 用户查看所有已识别的文档
  And 用户选择"<documentType>"文档并对比数据
  # 仅当当前是该批次的最后一个文档用例时,执行返回主页操作
  * 如果当前是"<batchName>"批次的最后一个文档验证,用户返回QueueHandling主页仪表盘

Examples:
  | batchName | documentType         |
  | QGOL2B    | Settlement Coversheet|
  | QGOL2B    | AssetLoanAgreement   |
  | QGK3UB    | Settlement Coversheet|
  | QGK3UB    | AssetLoanAgreement   |

关键说明

  • Background复用步骤:把“进入主页”“分配批次”这些重复操作放到Background里,每个用例会自动执行,减少冗余代码。
  • 条件返回逻辑:需要在步骤定义的代码中实现判断逻辑——比如记录当前批次的用例执行次数,当执行到该批次的第二个文档时,触发返回主页的操作。这样就能严格保证QGOL2B的两个用例跑完再返回,接着执行QGK3UB的用例。

方案二:拆分为独立Scenario(可读性拉满)

如果你不想在代码里加逻辑判断,也可以拆成更直白的独立Scenario,虽然稍微冗余但任何人看了都能立刻明白执行顺序:

Scenario: 验证QGOL2B批次的Settlement Coversheet文档
  Given 用户处于QueueHandling主页仪表盘
  And 用户已被分配批次
  When 用户从批次列表中选择"QGOL2B"批次
  Then 选中的批次在新窗口打开
  And 用户查看所有已识别的文档
  And 用户选择"Settlement Coversheet"文档并对比数据

Scenario: 验证QGOL2B批次的AssetLoanAgreement文档并返回主页
  Given 用户处于QGOL2B批次的文档页面
  And 用户查看所有已识别的文档
  And 用户选择"AssetLoanAgreement"文档并对比数据
  Then 用户返回QueueHandling主页仪表盘

Scenario: 验证QGK3UB批次的Settlement Coversheet文档
  Given 用户处于QueueHandling主页仪表盘
  And 用户已被分配批次
  When 用户从批次列表中选择"QGK3UB"批次
  Then 选中的批次在新窗口打开
  And 用户查看所有已识别的文档
  And 用户选择"Settlement Coversheet"文档并对比数据

Scenario: 验证QGK3UB批次的AssetLoanAgreement文档并返回主页
  Given 用户处于QGK3UB批次的文档页面
  And 用户查看所有已识别的文档
  And 用户选择"AssetLoanAgreement"文档并对比数据
  Then 用户返回QueueHandling主页仪表盘

内容的提问来源于stack exchange,提问作者u_u-de

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.07 08:12:29