黄瓜:是否可以在'After'钩子中手动设置场景状态?

时间:2018-04-13 18:51:48

标签: ruby cucumber

我知道这是一个不必要的用例,也是一个非常糟糕的做法。 但是,我仍然很想知道是否可以在'After'钩子中手动设置场景的状态。我正在使用Cucumber 2.4.0和Ruby进行测试自动化。

1 个答案:

答案 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

随意添加建议/评论