与标题相同:运行rspec时如何在控制台/标准输出上打印Rails.logger
?如.
Rails.logger.info "I WANT this to go to console/stdout when rspec is running"
puts "Like how the puts function works"
我还是想从Rails.logger
升到log/test.log
.
与标题相同:运行rspec时如何在控制台/标准输出上打印Rails.logger
?如.
Rails.logger.info "I WANT this to go to console/stdout when rspec is running"
puts "Like how the puts function works"
我还是想从Rails.logger
升到log/test.log
.
关于Rails 4,请参见this answer.
对于Rails 3.x、 在config/environments/test.rb
中配置记录器:
config.logger = Logger.new(STDOUT)
config.logger.level = Logger::ERROR
这会将测试期间记录的任何错误交错到标准输出.您可能希望将输出路由到STDERR,或者使用不同的日志(log)级别.
将这些消息发送到控制台和日志(log)文件需要比Ruby的内置Logger类更健壮的东西.logging颗Ruby 可以满足你的需求.将其添加到Gemfile
中,然后在config/environments/test.rb
中设置两个appender:
logger = Logging.logger['test']
logger.add_appenders(
Logging.appenders.stdout,
Logging.appenders.file('example.log')
)
logger.level = :info
config.logger = logger