【问题标题】:Cucumber. Skip all scenarios, if one failed黄瓜。跳过所有场景,如果一个失败
【发布时间】:2015-10-29 19:54:58
【问题描述】:

我有一些测试。喜欢

@skip_if_failed
Scenario: Test

...

Scenario: Test2

...

Scenario: Test3

我写的钩子代码如下:

After('@skip_if_failed') do |scenario|
 if scenario.failed?
  scenario.all each do |scenario|
    scenario.fail
  end
    end
 end

如果场景(@skip_if_failed)失败,我想。我跳过所有其他场景。我使用 Cucumber 2.0.2 和 Ruby 1.9.3

【问题讨论】:

    标签: ruby cucumber


    【解决方案1】:

    如果我想在第一次失败时停止,我使用一个名为 FAIL_QUICK 的环境变量并设置为 true。

    After do |scenario|
      Cucumber.wants_to_quit = true if scenario.failed? && ENV['FAIL_QUICK']
    end
    

    然后我调用如下:

    FAIL_QUICK=true cucumber
    

    【讨论】:

    • @dmcnulla 非常感谢。请告诉我是否可以仅在单个功能中跳过测试?其他功能又被Tag测试了吗? -
    • 标签是开放的,因此您可以拥有 20 个或更多不同的标签。这对大多数人来说不会那么有利。您可以使用此策略测试该标签。失败将通过该标签阻止所有其他人。您可以使用不同的标签运行一系列 cuke,一次一个。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-02-22
    • 1970-01-01
    • 1970-01-01
    • 2017-09-14
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多