从after(:each)

时间:2015-05-19 20:05:09

标签: ruby-on-rails ruby rspec appium

我使用TestRails记录自动测试套件中的故障。示例失败的输出如下:

Failures:

  1) can click on the Photos button after logging in
     Failure/Error: login.signin_btn.click
     NoMethodError:
       undefined method `click' for nil:NilClass
     # /Users/kkrzeminski/TestApp/Appium/Common/pages_helper.rb:36:in `click'
     # ./test_1_spec.rb:9:in `block (2 levels) in <top (required)>'

我可以使用example.exception中的after(:each)块中的spec_helper以及回溯获取异常,但我真正感兴趣的是该行开头Failure/Error:。我似乎无法找到获得该字符串的方法。在TestRails中记录测试失败的原因会很方便,因为异常和回溯不是非常具有描述性。

1 个答案:

答案 0 :(得分:2)

听起来您真正想要的是CI环境的自定义格式化程序。 RSpec格式化程序的protocol提供了一个example_failed挂钩,它将为您提供示例对象。

然后,您可以使用ExampleNotifications个对象来收集您想要的信息。