per Rails 4, vedere this answer.
per Rails 3.x, configurare un logger in config/environments/test.rb
:
config.logger = Logger.new(STDOUT)
config.logger.level = Logger::ERROR
Ciò interleave eventuali errori che vengono registrati durante i test su STDOUT . Si potrebbe desiderare di indirizzare l'output a STDERR o utilizzare un diverso livello di registro.
L'invio di questi messaggi sia alla console e un file di log richiede qualcosa di più robusto di built-in Logger classe di Ruby. La gemma logging farà quello che vuoi. Aggiungerlo al tuo Gemfile
, quindi impostare due appenders in config/environments/test.rb
:
logger = Logging.logger['test']
logger.add_appenders(
Logging.appenders.stdout,
Logging.appenders.file('example.log')
)
logger.level = :info
config.logger = logger
fonte
2014-01-31 21:59:52
Per rails 4.2.1, ho dovuto impostare il livello di log nella configurazione, poiché veniva sovrascritto in 'bootstrap.rb' sull'istanza del logger: https://github.com/rails/rails/blob/v4. 2.4/railties/lib/rails/application/bootstrap.rb # L70 Il livello di log è stato impostato in questo modo: 'config.log_level =: ERROR' – tommes
@tommes puoi postare un'altra risposta con il nome esatto del file e il codice che hai aggiunto? Modificherò la mia risposta per specificare che è per Rails 3.x. –
fatto! http://stackoverflow.com/a/32628272/1308089 – tommes