【问题标题】:Show only fail reasons when running rspec tests运行 rspec 测试时仅显示失败原因
【发布时间】:2017-05-15 19:13:40
【问题描述】:

在命令行上运行测试失败通常会显示如下示例:

(See full trace by running task with --trace)
F

Failures:

  1) Creating Post A user creates a new post
     Failure/Error: visit '/'

     ActionController::RoutingError:
       No route matches [GET] "/"
     # /home/user/.rvm/gems/ruby-2.3.3/gems/railties-5.0.3/lib/rails/rack/logger.rb:36:in `call_app'
     # /home/user/.rvm/gems/ruby-2.3.3/gems/railties-5.0.3/lib/rails/rack/logger.rb:24:in `block in call'
     # /home/user/.rvm/gems/ruby-2.3.3/gems/railties-5.0.3/lib/rails/rack/logger.rb:24:in `call'
     # /home/user/.rvm/gems/ruby-2.3.3/gems/rack-2.0.2/lib/rack/method_override.rb:22:in `call'
....

是否可以通过配置设置或其他方式显示失败错误?所以测试只会显示这个

F

Failures:

  1) Creating Post A user creates a new post
     Failure/Error: visit '/'

     ActionController::RoutingError:
       No route matches [GET] "/"

没有在底部显示所有路径。我认为有时更容易检测到错误

【问题讨论】:

    标签: ruby-on-rails rspec tdd bdd


    【解决方案1】:

    有趣的是,我认为没有办法得到你想要的。一开始我以为你可以用backtrace filtering,但显然when you filter everything, RSpec forces a full backtrace

    遗憾的是,我能提供的最好的就是:

    $ rspec spec/models/customer_spec.rb | grep -Ev '^\s+# '
    

    但是您的输出中失去了所有颜色。 =\

    【讨论】:

    • 感谢您的回复!我将您的答案标记为正确,因为我没有更多的回复。但是,如果其他人(甚至您)知道更好的选择,我将不胜感激
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-11-18
    • 2011-12-09
    • 1970-01-01
    相关资源
    最近更新 更多