【发布时间】:2017-10-31 23:25:11
【问题描述】:
我有 10 个要在 cucumber 中运行的测试,并且我正在使用 ruby 来编写我的代码。正在测试的应用程序设计迫使我进行相互依赖的测试。
所以在前一个案例通过之前,下一个案例失败。我添加了cucumber_wants_to_quit,以防第二种情况失败,以避免等待只获得失败报告。现在,我正在寻找类似的东西,再次运行第二个场景,并一直运行到pass,然后再进行第三个场景。
我知道命令cucumber re-run,但不想使用它,因为这基本上会运行所有场景并在第一次完整运行完成后运行失败的案例。
我的要求基本上是,当第二个场景失败时,在移动到第三个之前,运行第二个场景直到通过。在编码语言中类似于
After do |scenario.name|
if scenario.name == failed?
status = scenario.name.run_again until scenario.name == passed
if !status
Cucumber.wants_to_quit = true
end
end
end
对此有任何帮助吗?
【问题讨论】:
-
如果第二种方案失败了,如何再次运行它使其通过?
-
第二次测试中经常出现间歇性错误。但是当您将其作为一般问题时。有没有可能这样做?虽然我同意这不是最佳做法
标签: ruby automation cucumber bdd gherkin