У меня есть несколько тестов RSpec для моих моделей, и я хотел бы включить ведение журнала SQL ActiveRecord, как я вижу в режиме сервера Rails. Как это сделать?
Я начинаю свои тесты с
RAILS_ENV=test bundle exec rspec my/test_spec.rb
Спасибо
Вы можете попытаться настроить регистратор ActiveRecord на стандартный вывод в вашем тесте где-нибудь. Если вы используете rspec, может быть, в spec-помощнике?
ActiveRecord::Base.logger = Logger.new(STDOUT)
По умолчанию все ваши запросы к БД будут регистрироваться уже в тестовом режиме.Они будут в log/test.log.
log/test.log
набор
config.log_level = :info
в тестовой среде
если другие ответы не работают в вашем случае, пожалуйста, проверьте «уровень журнала» вашей тестовой среды.
по умолчанию это 'debug', который выведет SQL, сгенерированный Rails. если было установлено «info», SQL будет отсутствовать.