我在 rails 3.0 环境中运行 rspec。我们刚刚切换到在内存数据库中使用 sqlite3 进行测试。

要使其工作,您需要在每次运行时加载架构。

这样做的问题是您从模式加载中获得了大量输出。

根据 this ,似乎 Spork 正在以某种方式捕获此输出。所以无论你做什么(silence_stream),模式加载的输出仍然会继续通过。

有没有办法在 spork 中消除这种情况?输出会减慢整个测试周期并使其非常烦人。

最佳答案

这对我有用:

  ActiveRecord::Schema.verbose = false
  load "#{Rails.root}/db/schema.rb"

10-08 04:31