【发布时间】:2012-05-10 02:47:02
【问题描述】:
在 Cucumber 中,在我的 env.rb 文件中,我设置了 before & after 挂钩(嗯,其中一些,一些链接到特定标签)但是发现 after 挂钩在我放置时不输出任何内容puts 在其中。
例如,这是有效的:
Before do
puts "before the scenario"
end
但这不是:
After do
puts "after the scenario"
end
似乎 after 钩子确实运行了(因为在 after 钩子中有一个特定的行有问题,在尝试调试时,我发现了这个问题)但它们只是没有输出任何东西。
我所有的搜索都证明是徒劳的,找不到其他有类似问题的人。谁能告诉我我做错了什么?
【问题讨论】:
-
如果你想测试钩子是否运行,
raise可能比puts更有效(当然更容易注意到)。 -
谢谢,但正如我在问题中所说,我已经知道挂钩正在运行。我只是好奇为什么“puts”不会在 After 挂钩中输出任何内容。你(和其他人)也一样吗?还是只有我?
-
好吧,看起来你并没有做错什么。如果您使用的是自定义格式化程序,您可能想尝试切换回默认设置,因为自定义格式化程序可能会抑制更多输出。
-
尝试将其更改为
STDERR.puts "after the scenario"——也许黄瓜对STDOUT做了一些奇怪的事情? -
是的——Len,就是这样。那行得通。不过很奇怪。我在个人资料中使用“--format pretty”,这是你的意思吗,安德鲁?