我可以使用rspec登录test.log吗?

时间:2013-12-07 00:30:47

标签: ruby-on-rails ruby rspec

这是一个简单的规范来测试这个:

require 'spec_helper'
describe A_controller do
    before do
         @cat_noise = "Meow"
    end
    it "should do nothing because it's empty and I created it just to test logger!" do
       logger.info "---------- Here comes a cat noise -----------"
       logger.info @cat_noise
       logger.info "-----------There goes a cat noise -----------"
    end
end

这是测试环境的日志级别配置:

  config.log_level = :info

但是,我在test.log文件中与猫声无关。我可以做?会出现在test.log吗?对工厂等进行双重检查会很好......

1 个答案:

答案 0 :(得分:3)

我不确定logger变量来自何处。 RSpec块内没有logger可用。代码应该崩溃

NameError:
  undefined local variable or method `logger' for #<RSpec::Core::ExampleGroup::Nested_1::Nested_1:0x007ffa3208b478>

为了写入Rails日志,您应该使用

Rails.logger

因此

require 'spec_helper'
describe A_controller do
    before do
        @cat_noise = "Meow"
    end

    it "should do nothing because it's empty and I created it just to test logger!" do
       Rails.logger.info "---------- Here comes a cat noise -----------"
       Rails.logger.info @cat_noise
       Rails.logger.info "-----------There goes a cat noise -----------"
    end
end
相关问题