Rails Testデータベースにデータを入力しようとしていますが、問題が発生しています。
問題なく動作する開発データベースを休ませ、生成し、データを取り込むために使用するスクリプトがあります。基本的には
namespace :db do
desc "Fill database with sample data"
task populate: :environment do
Rake::Task['db:reset'].invoke
--Create all my dummy data here---
end
end
end
次に、コマンドを実行します。
bundle exec rake db:populate
bundle exec rake db:test:prepare
最初のコマンドは、上記のrakeタスクを使用してデータベースをリセットしてデータを入力しますが、2番目のコマンドはデータ構造を再作成するだけで、データを入力しません。
一部のRSPecテストにアクセスできるようにするためにこれを行っていますが、これに間違ってアプローチしているのではないかと思いますか?TDDのテストデータベースにテストデータ(構造のみ)を含めるべきではありませんか?代わりに、すべてが常にフィクスチャから実行される必要がありますか?