Unit testing 仅在测试环境上运行迁移脚本
有没有办法只在测试环境中运行迁移Unit testing 仅在测试环境上运行迁移脚本,unit-testing,testing,ruby-on-rails-3.2,rails-migrations,test-environments,Unit Testing,Testing,Ruby On Rails 3.2,Rails Migrations,Test Environments,有没有办法只在测试环境中运行迁移 我只想在测试环境中创建表和种子数据,因为暂存和生产数据库已经存在。您不能这样做吗: RAILS_ENV=test rake db:create RAILS_ENV=test rake db:migrate ?我根据帖子找到了一个解决方案。这使我只能对测试环境应用迁移 class CreateLicenseDatabase < ActiveRecord::Migration def change if Rails.env.test?
我只想在测试环境中创建表和种子数据,因为暂存和生产数据库已经存在。您不能这样做吗:
RAILS_ENV=test rake db:create
RAILS_ENV=test rake db:migrate
?我根据帖子找到了一个解决方案。这使我只能对测试环境应用迁移
class CreateLicenseDatabase < ActiveRecord::Migration
def change
if Rails.env.test?
create_table.....
end
end
end
class CreateLicenseDatabase
是的,您可以通过命令行执行此操作,但我想找到一个编程解决方案。不过,这会让您陷入一种奇怪的状态,迁移与schema.rb不匹配。我要提醒大家不要这样做,我之所以想在测试环境中运行一些迁移,是因为我只想为测试环境复制一个遗留数据库。