如何在基于环境的黄瓜方案概述示例中传递参数?

时间:2019-04-02 12:17:14

标签: cucumber-jvm cucumber-java scenarios

我正在使用方案大纲进行API测试。我的需求非常简单,请输入多个并验证输出。(负输入和正输入)。

因此,我要参数化输入数据取决于我的环境。

依赖-黄瓜java:2.4.0

 @sanity @regression @test 
  Scenario Outline: Verify user details
    Given Client is API Client
    When I make the GET request for <userId> to get details
    Then I should get success status as <success status>
    And Verify Json schema

    Examples:
      | userId        |   success status        |
      | 11903         |   true                  |
      | vjndv         |   false                 |
      | @!#$#         |   false                 |

在这里我要使用userId取决于我的环境。我使用的多种功能会因环境而异。

任何建议都会有所帮助。

2 个答案:

答案 0 :(得分:0)

我建议每个环境使用不同的功能文件。

黄瓜小黄瓜方案的基本前提是“示例规范”。在方案中添加变量/令牌可能会使方案不可读。

答案 1 :(得分:0)

我相信,如果您每个环境有不同的输入,则必须执行类似的操作。

Scenario Outline: Verify user details
 Given Client is API Client
 When I make the GET request for <userId> to get details
 Then I should get success status as <success status>
 And Verify Json schema

@env1 @sanity @regression @test
Examples: Environment 1
  | userId        |   success status        |
  | 11903         |   true                  |

@env2 @sanity @regression @test
Examples: Environment 2
  | userId        |   success status        |
  | vjndv         |   false                 |

@env3 @sanity @regression @test
Examples: Environment 3
  | userId        |   success status        |
  | @!#$#         |   false                 |

您将使用不同的标记来控制每个示例,以表示您要运行哪个环境。