【问题标题】:Different environments and data on cucumber黄瓜的不同环境和数据
【发布时间】:2018-06-01 17:29:17
【问题描述】:

我有问题。我正在使用量角器黄瓜框架。

例如,我的功能文件中有这个黄瓜测试用例

Scenario: login successfully
    Given I am in mypage
    When I fill the fields with data
        | key | value |
        | user | userValue |
        | pass| passValue |
    And I push on login button
    Then I am logged in with my credentials

鉴于我有 3 个环境(开发、测试和实时)

在开发中我有:User1 和 User2

在测试中我有:User3 和 User4

在现场我有:User5 和 User6

我需要为每个用户做一个测试用例,一共6个测试用例。

问题是:有什么方法可以使用相同的场景黄瓜进行 6 次测试?

谢谢!

【问题讨论】:

    标签: protractor cucumber


    【解决方案1】:

    将其转换为 ScenarioOutline 并将示例表拆分为 3。在运行器中针对您要运行的环境使用过滤器。

    Scenario Outline: login successfully
        Given I am in mypage
        When I fill the fields with data
            | key | value |
            | user | <userValue> |
            | pass| <passValue> |
        And I push on login button
        Then I am logged in with my credentials
    
    @dev
    Examples:
    |userValue|passValue|
    |user1|pass1|
    |user2|pass2|
    
    @test
    Examples:
    |userValue|passValue|
    |user3|pass3|
    |user4|pass4|
    
    @live
    Examples:
    |userValue|passValue|
    |user5|pass5|
    |user6|pass6|
    

    运行 test 用户的 Runner 类。对其他两个进行相应的更改。我在 Java 中提到过,你需要从量角器中更改。

    @CucumberOptions(tags = { "@test" }, plugin = {""} 
        glue = "", features = "")
    

    【讨论】:

      【解决方案2】:

      我对您为什么要测试您可以登录到三种不同的环境感兴趣。通常,在测试时,您将在尝试登录之前创建帐户。因此,在测试环境中,您将从一个空数据库开始,您的场景将是

      Given I am registered
      When I sign in
      Then I should be signed in
      

      Given 创建帐户,When 使用该帐户登录,Then 也检查 UI 以确认您已登录。

      我不知道你为什么要在开发环境中运行这个场景。

      我可以看到您可能想要测试生产系统上是否有某些帐户,但这与测试您是否可以登录是完全不同的事情。在生产环境中运行场景也是危险的。因此,如果您仍然想这样做,我会坚持使用单独的场景(最好是在完全独立的一组功能中),因为您确实在测试不同的东西

      Scenario: Accounts exist on production
      
        ...
      
      Scneario: I can login
        ...
      

      【讨论】:

        猜你喜欢
        • 2015-06-25
        • 2019-01-02
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-04-22
        • 1970-01-01
        • 2015-09-08
        相关资源
        最近更新 更多