我正在使用RSpec,我希望在完成每个测试后得到结果(通过与否),类名,测试名称(或描述)和错误消息(如果存在)
所以这是一个非常简单的代码
describe MyClass do
after :each do
#how do I know a test passed, its name, class name and error message?
end
it "should be true" do
5.should be 5
end
it "should be false" do
5.should be 6
end
end
您的建议?
答案 0 :(得分:1)
您可以从格式化程序获取额外信息,但由于after
挂钩是潜在的失败点,因此它们不会自行公开失败信息。
请参阅https://www.relishapp.com/rspec/rspec-core/v/2-11/docs/formatters/custom-formatters和https://github.com/rspec/rspec-core/blob/master/lib/rspec/core/formatters/base_formatter.rb
答案 1 :(得分:1)
有一些用于测试输出的格式化程序可以显示哪些测试通过/失败/未决,并且听起来您对名为documentation
的测试感兴趣。
为了使此格式化程序可用于所有rspec文件,请创建一个名为.rspec
的文件,其中包含以下内容:
--color # I just like this one for more easily read output
--formatter documentation
这意味着当您运行上面的测试套件时,您会看到:
MyClass
should be true
should be false (Failed - 1)
# Individual output for each error would show up down here
参考:https://www.relishapp.com/rspec/rspec-core/v/2-11/docs/formatters/custom-formatters