升级到Rails 5.2后的语法错误

时间:2018-06-21 23:19:20

标签: ruby-on-rails ruby capybara

我的测试失败了。

SyntaxError:
  /Users/myname/.rvm/gems/ruby-2.2.5@myproject/gems/capybara-3.2.1/lib/capybara/session.rb:129: syntax error, unexpected '.'
        @server&.wait_for_pending_requests

这是在我从5.0.3升级到Rails 5.2之后发生的。我当前的Gem文件如下。

source 'https://rubygems.org'

gem 'rails', '~> 5.2.0'

group :test do
  gem 'capybara-screenshot'
end

group :development, :test do
    gem 'rspec-rails', '~> 3.6.0'
    gem 'guard'
    gem 'guard-rspec'
    gem "factory_girl_rails"
    gem 'capybara'
    gem "capybara-webkit"
end

有人可以帮我脱掉所有的头发吗?非常感谢。

1 个答案:

答案 0 :(得分:2)

您正在使用Ruby版本2.2.5,并且还将capybara升级到版本3.2.1。如果您查看导致语法错误的行,则提交消息会提示您:Require minimum of Ruby 2.3.0

如果您查看history,则capybara版本3.2.0需要Ruby 2.3.0+

您可以将应用程序Ruby版本升级到2.3.0或更高版本,也可以将capybara版本设置为以前的版本。