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

能否为单个Gherkin步骤实现添加两个不同的Gherkin注解?

关于Gherkin步骤注解的两个问题解答
  • 单个Gherkin步骤实现可以同时使用多个Gherkin注解(比如示例里的@Given和@Then),像Python的Behave这类主流BDD框架都支持这种写法,核心是让同一段业务逻辑能复用在不同的场景步骤中。
  • 完全可以为一个步骤实现绑定两个不同的Gherkin步骤,这就是通过给同一个函数添加多个步骤注解来实现的,你的示例代码就是标准用法。

示例代码如下:

@Given('a user signs up for a new "{country}" account')
@Then('Select "{country}" on country selector')
def choose_country(context, country):
    match country:
        case "Country A":
            context.country_code = "A"
        case "Country B":
            context.country_code = "B"

这段代码里,choose_country函数同时对应两个不同的Gherkin步骤:一个是前置场景中的用户注册选国家步骤,另一个是后续的国家选择器操作步骤,两者共享相同的国家代码映射逻辑,减少了代码冗余。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.11 16:20:29