没有示例的方案大纲-黄瓜

时间:2019-04-09 16:00:19

标签: java intellij-idea cucumber integration-testing gherkin

Scenrio outline是否可以在没有Examples的情况下工作,而每个工具或Intellij中只有一个表是特殊的吗?

我阅读了Gherkin参考,它在其下面指定了一个Scenario outline must have an Examples

https://docs.cucumber.io/gherkin/reference/

但是,当我使用Scenario Outline运行测试时,没有任何地方的Examples部分,它可以正常工作。此处:

Scenario Outline: Sequence of customer update for something
  Given we create a Customer 
  When we update the customer with a state "<name>"
      Then the response status code is 200
        And we close the response

        | name|
        | Bob|
        | Adam|
        | Rachel|

那工作如何?

2 个答案:

答案 0 :(得分:0)

我认为它是将表解释为Cucumber Data Table,它看起来与“示例”表相似,但行为不同。示例表会导致针对每行重新运行整个场景,但是数据表只是一个很大的单个参数,直接传递到它们上方的步骤中。

虽然您没有因为省略Examples:关键字而出现语法错误,但我感到有些惊讶。我只是尝试在我的环境中删除其中一个方案大纲上的Examples:,虽然它“通过”(或者说没有失败),但实际上并没有运行测试(报告显示0场景,0个步骤)。因此要当心,您可能会误以为是。

我实际上去提交了一个错误,发现it has already been filed十年前...

答案 1 :(得分:0)

在我的情况下,我错误地制定了一个方案大纲,而没有任何示例:

Scenario Outline: System displays search criteria
    Given UserS is logged in 
    Then UserS is on the 'Search' page
    When UserS clicks on the 'Search criteria' link
    Then the system displays the search criteria

测试奇怪地一直运行,没有错误。直到我尝试创建html报告时,一个错误不断说不存在示例,这导致我们检查功能文件。

因此,我的猜测是,如果不存在任何参数,但测试者会以某种方式绕过“示例”部分,但报告者并不那么宽大。