0

当我在本地运行时,rspec所有规格都通过了。

当我在DockerCI中运行所有规范时,它们都失败了。但是,当我单独运行它们时,它们会通过。另一件要提的事情是,每次我有不同的规格失败时。

环境设置:

ruby 2.2.2
rails 4.2.0
postgres 9.3
(using ActiveRecord)
gems:
    database_cleaner 1.4.1
    fabrication 2.14.0
    faker 1.4.3

问题可能出在database_cleaner设置上。

# database_cleaner.rb
RSpec.configure do |config|
  config.before(:suite) do
    DatabaseCleaner.clean_with(:deletion)
    Rake::Task["create_mailers"].invoke
  end

  config.around(:each) do |example|
    DatabaseCleaner.strategy = example.metadata[:js] ? :deletion: :transaction
    DatabaseCleaner.cleaning do
      example.run
    end
  end

  config.after(:each) do
    Capybara.reset_sessions!
    DatabaseCleaner.clean
  end
end

所以我的问题是,如何让我的测试在DockerCI中通过?

4

0 回答 0