Ruby on rails Rspec在每个文件之前重置数据库

Ruby on rails Rspec在每个文件之前重置数据库,ruby-on-rails,ruby,database,unit-testing,rspec,Ruby On Rails,Ruby,Database,Unit Testing,Rspec,我有一些单元测试,只有在运行数据库之前清理数据库才能通过 但如果我用rspec命令运行所有测试,它们就不再工作了,我也不知道为什么 那么如何在每个文件之前重置测试数据库呢 我已经试过了: config.before(:suite) do DatabaseCleaner.strategy = :transaction DatabaseCleaner.clean_with(:truncation) end config.before(:each) do DatabaseCleaner

我有一些单元测试,只有在运行数据库之前清理数据库才能通过

但如果我用rspec命令运行所有测试,它们就不再工作了,我也不知道为什么

那么如何在每个文件之前重置测试数据库呢

我已经试过了:

config.before(:suite) do
   DatabaseCleaner.strategy = :transaction
   DatabaseCleaner.clean_with(:truncation)
end
config.before(:each) do
  DatabaseCleaner.start
end
config.after(:each) do
  DatabaseCleaner.clean
end

你看到了什么错误?你能比“它们不再工作”更具描述性吗?@ruby\u newbie我有一个过滤器,用于查找当前用户(用户登录),但id一直在增长,所以我猜数据库出现了一些错误。你确定需要在测试文件中使用此代码吗?“id一直在增长”我不确定你的意思。你能不能发布一个错误或者正在发生的事情和你期望发生的事情之间的差异?同时发布您的测试,以及spec_助手的内容。