运行我们的rspec测试套件时
bundle exec rspec spec/
日志中包含很多日志语句。特别是,控制器规格多次显示这样的事情:
{"controller"=>"myController", "action"=>"create"}
我想摆脱这些但找不到来源。没有与这样的匹配的puts语句,也没有任何Rails.logger调用。我假设这是一个日志级问题,但我可能是错的。在environment / test.rb中设置config.log_level无效。
当前的rspec配置如下所示
RSpec.configure do |config|
config.include Devise::TestHelpers, :type => :controller
config.mock_with :rspec
config.before(:suite) do
DatabaseCleaner.strategy = :truncation
DatabaseCleaner.orm = "mongoid"
end
config.before(:each) do
DatabaseCleaner.clean
end
config.color_enabled = true
config.tty = true
config.formatter = :documentation # :progress, :html, :textmate
end
关于如何禁用这些类型的日志的任何想法?
旁注:Gemfile使用'rails','3.2.13'和'rspec-rails','2.14.0'
答案 0 :(得分:30)
如果有人稍后遇到同一个帖子,我发现我遇到了同样的问题,但是,它来自我的Gemfile中的Heroku rails_12factor
gem。
另一位用户说宝石正在为他们造成双倍输出:Double console output?
只要我将其注释掉或放在:production
组中,我控制台中的所有详细SQL输出就会消失。
另外还有一件事要检查你是否有同样的问题,但作者的解决方案不是为你解决的问题。
答案 1 :(得分:2)
毕竟问题不在于Rspec。相反,有人在控制器助手中编写了“p params”。由于这个原因,这个问题并不真正有效。
Relishapp的文档对于揭示这个
非常有用