我知道这是一个不必要的用例,也是一个非常糟糕的做法。 但是,我仍然很想知道是否可以在'After'钩子中手动设置场景的状态。我正在使用Cucumber 2.4.0和Ruby进行测试自动化。
答案 0 :(得分:0)
经过一番研究后我发现可以在'After'钩子中手动设置场景的状态。请参阅下面的示例
After do |scenario|
duration = scenario.instance_variable_get(:@result).instance_variable_get(:@duration)
if scenario.failed?
# Manually set to passed
passed = Cucumber::Core::Test::Result::Passed.new(duration)
scenario.instance_variable_set(:@result, passed)
elsif scenario.passed?
# Manually set to failed
exception = StandardError.new("message")
failed = Cucumber::Core::Test::Result::Failed(duration, exception)
scenario.instance_variable_set(:@result, failed)
end
随意添加建议/评论