RSpec テストによって生成された SQL クエリ ログを表示するにはどうすればよいでしょうか? 質問する

RSpec テストによって生成された SQL クエリ ログを表示するにはどうすればよいでしょうか? 質問する

Rails 3 アプリケーションの仕様を書いています。DB トランザクションが実際に機能しているかテストしたいです。仕様に従ってアプリケーションで生成される SQL クエリを確認できれば非常に助かります。

Rails コンソールと同じようにクエリを表示する方法はありますか?

私は Rails 3.0.9、RSpec 2.6、sqlite を使用しています (後で mysql に移行する予定です)

ベストアンサー1

仕様に次のコードを入力します。

Rails 7.0以上

ActiveRecord.verbose_query_logs = true

レール5.2

ActiveRecord::Base.verbose_query_logs = true

レール 3.0

ActiveRecord::Base.logger = Logger.new(STDOUT) if defined?(ActiveRecord::Base)

Rails のアップデートについてコメントしてくださった皆様に感謝します。

おすすめ記事