gpt4 book ai didi

ruby - 为什么我在 Cucumber "Around"中看不到抛出的异常?

转载 作者:数据小太阳 更新时间:2023-10-29 07:20:00 25 4
gpt4 key购买 nike

我有一组在构建服务器上运行的 cucumber 测试。

我经常想要比服务器直接提供的反馈更快的反馈,所以我在运行时观察控制台输出。我想要一种用单个搜索词识别任何失败测试的方法,所以我修改了我们的 Around 以在任何异常上打印“失败测试”,但 Ruby 似乎没有将异常返回给周围。我已经通过在 begin ... end 之后放置语句来验证这一点。

有谁知道为什么会发生这种情况,或者有什么方法可以包装从失败的测试中抛出的任何异常?

Around() do |scenario, block|
begin
Timeout.timeout(0.1) do
block.call
end
rescue Timeout::Error => e
puts "Failed Test"
puts caller
rescue Exception => e
puts "Failed Test"
raise e
end
end

最佳答案

看看 Cucumber 1.3.12,它实际上从场景步骤中拯救了任何异常。因此,如果不修改 cucumber gem,您将无法以任何方式看到它们。

有关如何在该位置放置调试 Hook 的详细信息,请参见我的回答: https://stackoverflow.com/a/22654786/520567

关于ruby - 为什么我在 Cucumber "Around"中看不到抛出的异常?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8407669/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com