我目前有一个项目,有一大堆Cucumber .feature
文件,其中许多方案已知被破坏。这些场景的标签为@broken
,我们避免通过执行黄瓜-t [email protected]
来运行它们。不幸的是,当我们检查黄瓜产量时,这使得这些情景有效地不可见。它们不会显示为通过,失败或跳过。我想要的是将这些场景的数量包括在黄瓜产量中。他们应该显示为“跳过”测试,而不是根本不显示。如何在黄瓜中“跳过”带有标签的场景?
我的尝试:
Before('@broken') do |scenario|
pending
end
但是,这引起了Cucumber::Pending
例外其中,未捕获的,只是失败的情况。
我知道我可以写像步:
Given /^PENDING/ do
pending
end
,然后再通过我的所有特征文件,并添加这一步对每个场景都与@broken
标签。虽然这看起来很疯狂。它不符合“步骤”应该是什么的语义(更不用说它需要对我的所有功能文件进行广泛的更改,而不是仅仅为标签添加钩子)。
这是我能用标签做的事吗?
正如我所说的,当我试图使用标记的挂钩时,它标记的方案失败而不是挂起。我收到以下错误: 'TODO(Cucumber :: Pending) /Library/Ruby/Gems/2.0.0/gems/cucumber-1.3.10/lib/cucumber/cub_support/rb_world.rb:130:in' ' /Users/me/test/steps/test.rb:6:in'Before'' – user108471 2014-09-26 13:20:52
我明白了,我已经建立了一个Ruby项目,事实上它标记了挂起的异常从钩子。在我通常使用的cucumber-jvm和cucumber-js中,它按预期工作,将情景标记为待定。无论如何,我会看看Ruby实现,看看是否有解决方法。问候。 – 2014-09-26 15:11:13
好的,我现在正在工作,但是你将不得不更新到最新版本2.0.0.beta.3,我会更新我的答案。 – 2014-09-26 15:27:49