小编Ahm*_*ezk的帖子

是什么让 Rspec 占用超过 4GB 的内存来运行 500 个规范?

我正在开发一个具有 500 多个规格的应用程序,当我在本地计算机上运行这些规格时,它成功通过了。但当这些规范在 CircleCI 上运行时,该进程就会被终止。我尝试通过跟踪本地计算机上的内存来调查该问题。当我看到 ruby​​ 进程占用了 4GB 内存时,我感到很惊讶,这就是触发 CircleCI 杀死该进程的原因。

我不确定我的规格占用所有这些内存的原因我已经搜索过在每个规格后清理内存的配置但无济于事。

这是我的rails_helper.rb

require "mongoid-rspec"

require "spec_helper"
ENV["RAILS_ENV"] ||= "test"
require File.expand_path("../../config/environment", __FILE__)
if Rails.env.production?
  abort("The Rails environment is running in production mode!")
end

require "database_cleaner"

require "rspec/rails"

#
Dir[Rails.root.join("spec/support/**/*.rb")].each { |f| require f }

RSpec.configure do |config|
  config.infer_spec_type_from_file_location!

  # FactoryGirl
  config.include FactoryGirl::Syntax::Methods

  # Render
  config.render_views

  # Filter lines from Rails gems in backtraces.
  config.filter_rails_from_backtrace!
  # arbitrary gems may also be filtered via:
  # config.filter_gems_from_backtrace("gem name")
  config.include Mongoid::Matchers, type: …
Run Code Online (Sandbox Code Playgroud)

rspec rspec-rails circleci rspec3 ruby-on-rails-5.1

5
推荐指数
1
解决办法
557
查看次数

标签 统计

circleci ×1

rspec ×1

rspec-rails ×1

rspec3 ×1

ruby-on-rails-5.1 ×1