1. ホーム
  2. ruby-on-rails

[解決済み] db:seedのデータをテスト用データベースに自動的にロードするには?

2022-07-19 02:45:42

質問

Rails 2.3.4+でシードデータを読み込むための新しい標準的な方法である db:seed rakeタスクを使用しています。

私のアプリケーションが本当に正しく機能するために必要な、定数データをロードしています。

最良の方法は何かというと db:seed タスクをテストの前に実行させ、データを事前に入力させる最良の方法は何でしょうか?

どのように解決するのですか?

この db:seed を読み込むだけです。 db/seeds.rb スクリプトをロードするだけです。したがって、データをロードするためにそのファイルを実行するだけです。

load "#{Rails.root}/db/seeds.rb"

# or

Rails.application.load_seed

どこに配置するかは、使用しているテストフレームワークと、すべてのテストの前に読み込ませたいのか、それとも最初に一度だけ読み込ませたいのかによります。これを setup の呼び出しの中に置くか、あるいは test_helper.rb ファイル内にあります。