spork / guard重新加载架构

时间:2013-01-28 13:01:18

标签: mysql ruby-on-rails rspec guard spork

我使用spork和guard加速我的Rails 3.2应用程序中的测试套件。然而,在添加新迁移之后,防护中的测试表现得很奇怪:即使我之前运行rake db:migrate,它们也不会知道架构中的更改。当我停下来并运行rake spec时,他们开始正常行事。我认为它的行为方式是这样的,因为spork / guard在测试之前不会更新模式。是否可以将spork配置为更新#prefork上的模式并保护在模式更改时重新加载spork?

2 个答案:

答案 0 :(得分:3)

您需要运行rake db:test:prepare来应用迁移以进行测试环境。

答案 1 :(得分:0)

理论上,以下默认的Spork设置代码应在每次运行测试时重新加载模式。你有吗?

  ActiveRecord::Schema.verbose = false
  silence_stream STDOUT do
    load Rails.root.join('db', 'schema.rb') # use db agnostic schema by default
    load Rails.root.join('db', 'seeds.rb')
  end
相关问题