2

我正在尝试database_cleaner使用我的测试套件,但在网上找不到有关此错误的任何信息:

ERROR Couldn't find User with id=1

测试运行良好,直到我添加database_cleaner. 这就是我在test_helper.rb文件中使用它的方式:

# Database cleaner.
DatabaseCleaner.strategy = :truncation
class MiniTest::Spec
  before :each do
    DatabaseCleaner.clean
  end
end

如果我的策略是 . 它也不起作用:transaction

4

1 回答 1

0

根据文档,调用DatabaseCleaner.clean应该在后钩子和DatabaseCleaner.start前钩子中(截断策略可能不需要开始调用。

这里很可能发生的是,数据库清理器正在清除您在实际测试运行之前在其他钩子中设置的任何数据。这将取决于 before 钩子运行的顺序。

于 2014-07-04T20:56:43.733 回答