2012-06-18 2 views
2

Я установил JRuby 1.6.7.2 (64 бит) и JDK 1.7.x (64-разрядная версия) на моем компьютере с Windows 7. Прямо сейчас я просто пытаюсь запустить браузер (Firefox 13.0) с помощью Watir, но я продолжаю получать HTTP-ошибку, которая, кажется, поступает из JRuby + gems. Я установил драгоценные камни, используя следующие команды:Путь HTTP Пустой Ошибка при использовании JRuby Watir

jgem install watir-webdriver 
jgem install rspec 
jgem install capybara 
jgem install page-object 
jgem install bundler 
jgem install jruby-jars 

Здесь ошибка StackTrace я получаю, когда я пытаюсь открыть браузер, используя Watir:

C:\Windows\System32>jirb 
irb(main):001:0> require 'rubygems' 
=> true 
irb(main):002:0> require 'watir-webdriver' 
=> true 
irb(main):003:0> b = Watir::Browser.start("http://www.google.com", :firefox) 
[WARNING] MultiJson is using the default adapter (ok_json). We recommend loading 
a different JSON library to improve performance. 
ArgumentError: HTTP request path is empty 
    from C:/Ruby/jruby-1.6.7.2/lib/ruby/1.8/net/http.rb:1476:in `initialize' 

    from C:/Ruby/jruby-1.6.7.2/lib/ruby/1.8/net/http.rb:1594:in `initialize' 

    from C:/Ruby/jruby-1.6.7.2/lib/ruby/gems/1.8/gems/selenium-webdriver-2.2 
    2.2/lib/selenium/webdriver/remote/http/default.rb:64:in `new_request_for' 

    from C:/Ruby/jruby-1.6.7.2/lib/ruby/gems/1.8/gems/selenium-webdriver-2.2 
    2.2/lib/selenium/webdriver/remote/http/default.rb:34:in `request' 

    from C:/Ruby/jruby-1.6.7.2/lib/ruby/gems/1.8/gems/selenium-webdriver-2.2 
    2.2/lib/selenium/webdriver/remote/http/default.rb:57:in `request' 

    from C:/Ruby/jruby-1.6.7.2/lib/ruby/gems/1.8/gems/selenium-webdriver-2.2 
    2.2/lib/selenium/webdriver/remote/http/common.rb:40:in `call' 

    from C:/Ruby/jruby-1.6.7.2/lib/ruby/gems/1.8/gems/selenium-webdriver-2.2 
    2.2/lib/selenium/webdriver/remote/bridge.rb:598:in `raw_execute' 

    from C:/Ruby/jruby-1.6.7.2/lib/ruby/gems/1.8/gems/selenium-webdriver-2.2 
    2.2/lib/selenium/webdriver/remote/bridge.rb:92:in `create_session' 

    from C:/Ruby/jruby-1.6.7.2/lib/ruby/gems/1.8/gems/selenium-webdriver-2.2 
    2.2/lib/selenium/webdriver/remote/bridge.rb:68:in `initialize' 

    from C:/Ruby/jruby-1.6.7.2/lib/ruby/gems/1.8/gems/selenium-webdriver-2.2 
    2.2/lib/selenium/webdriver/firefox/bridge.rb:28:in `initialize' 

    from C:/Ruby/jruby-1.6.7.2/lib/ruby/gems/1.8/gems/selenium-webdriver-2.2 
    2.2/lib/selenium/webdriver/common/driver.rb:31:in `for' 

    from C:/Ruby/jruby-1.6.7.2/lib/ruby/gems/1.8/gems/selenium-webdriver-2.2 
    2.2/lib/selenium/webdriver.rb:65:in `for' 

    from C:/Ruby/jruby-1.6.7.2/lib/ruby/gems/1.8/gems/watir-webdriver-0.6.1/ 
    lib/watir-webdriver/browser.rb:35:in `initialize' 

    from C:/Ruby/jruby-1.6.7.2/lib/ruby/gems/1.8/gems/watir-webdriver-0.6.1/ 
    lib/watir-webdriver/browser.rb:18:in `start' 

    from (irb):3:in `evaluate' 
    from org/jruby/RubyKernel.java:1083:in `eval' 
    from C:/Ruby/jruby-1.6.7.2/lib/ruby/1.8/irb.rb:158:in `eval_input' 
    from C:/Ruby/jruby-1.6.7.2/lib/ruby/1.8/irb.rb:271:in `signal_status' 
    from C:/Ruby/jruby-1.6.7.2/lib/ruby/1.8/irb.rb:155:in `eval_input' 
    from org/jruby/RubyKernel.java:1410:in `loop' 
    from org/jruby/RubyKernel.java:1183:in `catch' 
    from C:/Ruby/jruby-1.6.7.2/lib/ruby/1.8/irb.rb:154:in `eval_input' 
    from C:/Ruby/jruby-1.6.7.2/lib/ruby/1.8/irb.rb:71:in `start' 
    from org/jruby/RubyKernel.java:1183:in `catch' 
    from C:/Ruby/jruby-1.6.7.2/lib/ruby/1.8/irb.rb:70:in `start' 
    from C:\Ruby\jruby-1.6.7.2\bin\jirb:13:in `(root)'irb(main):004:0> 

У меня есть селен webdrivers т.е. & хром добавил к моему пути к классам. Когда я выполняю эту команду с ie или chrome, я получаю аналогичную ошибку HTTP. Это исправление, которое я должен сделать вручную для файлов gem?

ответ

3

У меня была такая же ошибка с драгоценным камнем watir-webdriver. Проблема заключалась в настройках прокси-сервера http, и решение заключалось в том, чтобы добавить no_proxy env перед кодом.

ENV['no_proxy'] = "127.0.0.1" 

Я надеюсь, что это может вам помочь!

Смежные вопросы