RSpec 测试 Factory Girl 创建图像

RSpec tests with Factory Girl creating image

在 rails 4.2.0 应用程序中,我使用 RSpec 和 Factory Girl 进行测试。在应用程序中,我使用 Paperclip 进行图像上传。当我 运行 使用空白图像进行测试时,图像被放置在 public 文件夹中。

有什么方法可以使用 database_cleaner gem 来解决这个问题吗?

到目前为止我有这个:

spec\support\factory_girl.rb

RSpec.configure do |config|
config.include FactoryGirl::Syntax::Methods
 config.before(:suite) do
  begin
    DatabaseCleaner.start
    FactoryGirl.lint
  ensure
    DatabaseCleaner.clean
  end
 end
end

spec\support\database_cleaner.rb

RSpec.configure do |config|

 config.before(:suite) do
  DatabaseCleaner.clean_with(:truncation)
 end

 config.before(:each) do
  DatabaseCleaner.strategy = :transaction
 end

 config.before(:each) do
  DatabaseCleaner.start
 end

 config.after(:each) do
  DatabaseCleaner.clean
 end
end

DatabaseCleaner 用于清理数据库,而不是文件系统。您可以自己删除文件,例如在 after 块中。

after(:each) { FileUtils.rm @file_path }