Rspec 继续使用开发数据库
Rspec keeps using development database
我在 database.yml
中有不同的开发和测试数据库。
我在文件 rails_helper.rb
和 spec_helper.rb
的开头都有 ENV['RAILS_ENV'] = 'test'
,它们是用 rspec 初始化命令生成的。
此外,我试过 Rails.env = 'test'
没有成功。
我运行rspec作为RAILS_ENV=test rake spec
我在初始化脚本的任何地方都没有 ENV['RAILS_ENV']
设置或 Rails.env
设置。
但是,Rspec 继续使用开发数据库而不是测试数据库。
我在互联网上查了很多类似的问题,但都没有答案。
有什么解决办法吗?
您使用的 rails 是什么版本?试试耙子 db:test:prepare。在 Rails 4+ 中,它已被弃用但仍然有效。似乎在 rails 4.1+ 中,会自动检查迁移,运行 db:schema:load 就可以了。
我在 database.yml
中有不同的开发和测试数据库。
我在文件 rails_helper.rb
和 spec_helper.rb
的开头都有 ENV['RAILS_ENV'] = 'test'
,它们是用 rspec 初始化命令生成的。
此外,我试过 Rails.env = 'test'
没有成功。
我运行rspec作为RAILS_ENV=test rake spec
我在初始化脚本的任何地方都没有 ENV['RAILS_ENV']
设置或 Rails.env
设置。
但是,Rspec 继续使用开发数据库而不是测试数据库。
我在互联网上查了很多类似的问题,但都没有答案。
有什么解决办法吗?
您使用的 rails 是什么版本?试试耙子 db:test:prepare。在 Rails 4+ 中,它已被弃用但仍然有效。似乎在 rails 4.1+ 中,会自动检查迁移,运行 db:schema:load 就可以了。