2017-01-18 7 views
0

나는 capybara로 셀레늄을 실행하려고하고 있으며, firefox 50.1로 우분투에서 minitest를 실행하려고하지만 URL을 방문하지는 않습니다. 난 그냥 파이어 폭스가 열려 있지만 빈 얻을 수 있지만, 가끔 오류 일 수 :레일 셀레늄 방문 명령 파이어 폭

testfile 위 :

require "test_helper" 

feature "dashboard" do 

    scenario "test" , :js=>true do 
    Capybara.current_driver = :selenium 
    visit("http://www.google.com/") 

    visit root_url 
    end 
end 

gemfile :

group :test do 
    gem 'selenium-webdriver', '~> 2.53', '>= 2.53.4' 
    gem 'minitest-reporters' 
    gem "minitest-rails-capybara" 

error1 :

test_0001_test ERROR (65.56s) Selenium::WebDriver::Error::WebDriverError:
Selenium::WebDriver::Error::WebDriverError: unable to obtain stable firefox connection in 60 seconds (127.0.0.1:7055) test/features/instance_dashboard_test.rb:81:in `block (2 levels) in '

내가 실종 일부를 구성 또는 무엇인가? 어떤 URL도 방문 할 수 없으며 테스트가 작동하지 않습니다.

답변

1

비슷한 문제가 있었는데 잠시 동안 Firefox를 ESR 버전 (예 : acikojevic)으로 다운 그레이드했지만 결국 geckodriver가 만료 될 때까지 Firefox에서 Chrome으로 전환하는 것이 더 쉬웠습니다. 이렇게하려면

은 당신의 spec_helper.rb에 다음을 추가 : 나 자신에 대한 발견

# Use Chrome instead of Firefox until geckodriver matures 
Capybara.register_driver :selenium do |app| 
    Capybara::Selenium::Driver.new(app, browser: :chrome) 
end 
+0

그건 그렇고, chromedriver를 설치하고 경로에 추가해야했습니다. 이 링크는 https://developers.supportbee.com/blog/setting-up-cucumber-to-run-with-Chrome-on-Linux/에 있지만 내 test_helper.rb에서 구성을 사용했습니다. – Gaston

1

FF 버전이 셀레늄 2.53에서 지원되는지 잘 모르겠습니다. FF 버전 (v46-v47과 같은 것을 목표로)을 다운 그레이드하거나 업그레이드하는 것을 고려하십시오. 셀레늄 버전 (더 좋을 것이지만 추가로 geckodriver 설정이 필요합니다). 도움이되는지 확인하십시오.

0

가장 좋은 조합은 FF45 ESR + 셀레늄 WebDriver 2.53.4을 사용하고 있습니다. 다행히 나는 FF54 + Selenium 3.4.3도 시도했지만 Firefox는 Selenium3 +의 기본 확장을 구현하지 않기로 결정 했으므로 GeckoDriver를 설치해야합니다.