RSpec - 加载时发生错误 - 您是说吗?

Gon*_*nza 6 ruby rspec ruby-on-rails rspec-rails

我想从 TDD 开始,但我遇到了这个错误,我正在使用 rvm - ruby​​ 3.0.0 和 Rails 6.1.1

An error occurred while loading ./spec/models/user_spec.rb. - Did you mean?
                rspec ./spec/spec_helper.rb

Failure/Error: require File.expand_path('../config/environment', __dir__)

LoadError:
  cannot load such file -- rexml/document
 /home/manci/.rvm/gems/ruby-3.0.0/gems/bootsnap-1.5.1/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:34:in `require'
 /home/manci/.rvm/gems/ruby-3.0.0/gems/activesupport-6.1.1/lib/active_support/dependencies.rb:332:in `block in require'
 /home/manci/.rvm/gems/ruby-3.0.0/gems/activesupport-6.1.1/lib/active_support/dependencies.rb:332:in `require'
 /home/manci/.rvm/gems/ruby-3.0.0/gems/selenium-webdriver-3.142.7/lib/selenium/webdriver/firefox.rb:22:in `<main>'
 /home/manci/.rvm/gems/ruby-3.0.0/gems/bootsnap-1.5.1/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:23:in `require'
Run Code Online (Sandbox Code Playgroud)

如何解决这个问题?

小智 6

正如RSpec 成员Jon Rowe在这里指出的那样( https://github.com/rspec/rspec-rails/issues/2441#issuecomment-756621403),如果您使用的是 Ruby 3.0.0,则必须安装rexml.

该 gem 已从 Ruby 3.0.0 中的标准 gem 集中删除,并且需要rails-controller-tests


Gon*_*nza 1

我在这里找到了解决方案https://github.com/rspec/rspec-rails/issues/2441

对于后代,您可以(当前)与 rspec 一起使用的 ruby​​ 和 Rails 的最新版本(我认为)是:

红宝石 2.7.2 轨道 6.0.3