【问题标题】:Updating the name of SpecFlow scenario outline variations更新 SpecFlow 场景大纲变体的名称
【发布时间】:2014-03-23 16:23:33
【问题描述】:

我有这个功能文件:

Scenario Outline: Example
    Given I am a user
    When I enter <x> as an amount
    Then the result should be <result>
    Examples:
        | x | result |
        | 3 | 3      |
        | 1 | 1      |

我的问题是运行后,每个示例都标记为variant #

有没有办法命名每个示例行实际测试的内容,以便在报告中我们更好地了解测试的内容,而不仅仅是:

Scenario: Example, Variant 0
Scenario: Example, Variant 1
Scenario: Example, Variant 2

我正在努力帮助我们的测试人员获得更有意义的报告;他们编写多个示例通常是有原因的,并且他们希望以某种方式显示该示例的原因。

【问题讨论】:

    标签: naming specflow gherkin scenarios


    【解决方案1】:

    正如 SpecFlow Scenario Outlines 文档所说:

    Gherkin 语法并不强制所有示例列都有 场景大纲中的匹配占位符,您甚至可以 在示例集中引入任意列以便更好地测试 方法名可读性

    因此,您可以在“示例”表中引入任意列,以简洁地描述测试的意图,例如

    Scenario Outline: Example
        Given I am a user
        When I enter <x> as an amount
        Then the result should be <result>
        Examples:
            | example description   | x | result |
            | Example Description 1 | 3 | 3      |
            | Example Description 2 | 1 | 1      |
    

    这将产生以下测试名称:

    Example_ExampleDescription1
    Example_ExampleDescription2
    

    【讨论】:

    • @CaffGeek 酷。让我知道你过得怎么样。
    • 如果有人遇到 SpecFlow 问题,即使在添加标签列后仍使用“变体”命名模式,请确保其中的所有值都是唯一的!一个欺骗将导致它恢复。
    • @DavidPeters 非常感谢你。正在做我的头。
    • 我不明白这是如何工作的。我的测试名称总是描述完整的示例表行,例如测试名称是:NP10_New_Record_Details_Tab_Info("Prod010a","Product","01/10/2020","10.00",null) 你如何让它在测试名称中只使用一个示例表列?
    猜你喜欢
    • 2021-01-27
    • 2014-10-12
    • 2021-04-29
    • 2018-03-10
    • 1970-01-01
    • 2020-03-10
    • 1970-01-01
    • 2015-11-23
    • 2018-08-02
    相关资源
    最近更新 更多