Ruby on rails capybara,rspec-地址已在使用-绑定(2)用于127.0.0.1:3000

Ruby on rails capybara,rspec-地址已在使用-绑定(2)用于127.0.0.1:3000,ruby-on-rails,rspec,capybara,Ruby On Rails,Rspec,Capybara,我正在运行一个特性规范来测试一些Rails代码。该规范运行良好,但是有一些js需要测试 根据文档,我已经在场景中添加了:js=>true标志。但是,当我执行此操作时,会出现以下错误: Failures: 1) User can check off items as being owned user can check off an item on the checklist Failure/Error: Unable to find matching line from back

我正在运行一个特性规范来测试一些Rails代码。该规范运行良好,但是有一些js需要测试

根据文档,我已经在场景中添加了:js=>true标志。但是,当我执行此操作时,会出现以下错误:

Failures:

  1) User can check off items as being owned user can check off an item on the checklist
     Failure/Error: Unable to find matching line from backtrace
     Errno::EADDRINUSE:
       Address already in use - bind(2) for 127.0.0.1:3000
     # /Users/agazoom/.rvm/gems/ruby-2.2.1@kollista/gems/rack-1.6.0/lib/rack/handler/webrick.rb:32:in `new'
     # /Users/agazoom/.rvm/gems/ruby-2.2.1@kollista/gems/rack-1.6.0/lib/rack/handler/webrick.rb:32:in `run'
     # /Users/agazoom/.rvm/gems/ruby-2.2.1@kollista/gems/capybara-2.4.4/lib/capybara.rb:173:in `run_default_server'
     # /Users/agazoom/.rvm/gems/ruby-2.2.1@kollista/gems/capybara-2.4.4/lib/capybara.rb:359:in `block (2 levels) in <top (required)>'
     # /Users/agazoom/.rvm/gems/ruby-2.2.1@kollista/gems/capybara-2.4.4/lib/capybara/server.rb:70:in `call'
     # /Users/agazoom/.rvm/gems/ruby-2.2.1@kollista/gems/capybara-2.4.4/lib/capybara/server.rb:70:in `block in boot'

我做了一些实验,发现当我关闭webkit时,测试工作正常。基本上,看起来Capybara试图使用与webkit相同的端口,但在使用js时失败了。不要问我为什么或如何的细节

因此,我刚刚更改了在“rails\u helper”中运行Capybara的端口:

Capybara.configure do |config|
  .
  .
  config.server_port = 3001
end
Capybara.configure do |config|
  .
  .
  config.server_port = 3001
end