J'ai des tests RSpec pour mes modèles et je voudrais activer la journalisation SQL ActiveRecord comme je le vois en mode serveur Rails. Comment faire?
Je commence mes tests avec
Rails_ENV=test bundle exec rspec my/test_spec.rb
Merci
Par défaut, toutes vos requêtes db seront déjà enregistrées en mode test. Ils seront dans log/test.log
.
Vous pouvez essayer de paramétrer l'enregistreur ActiveRecord sur stdout dans votre test quelque part. Si vous utilisez rspec, peut-être dans l'aide aux spécifications?
ActiveRecord::Base.logger = Logger.new(STDOUT)
ensemble
config.log_level = :info
en environnement de test
si d'autres réponses ne fonctionnent pas dans votre cas, veuillez vérifier le "niveau de journalisation" de votre environnement de test.
sa valeur par défaut est 'debug', qui affichera le SQL généré par Rails. s'il a été défini sur "info", le SQL sera manquant.