我刚在本地安装了jenkins,我需要在jenkins中运行watir webdriver脚本,该脚本在命令提示符下运行成功。下面是简单的watir脚本。
require 'watir-webdriver'
b=Watir::Browser.new
b.goto "http://www.google.com"
b.text_field(:class => "gsfi").set "Avinash"
b.close我将上面的代码保存到一个名为test.rb的文件中,当我在命令提示符上执行相同的代码时,它运行得很好。但是,我刚刚安装了Jenkins并创建了一个Freestyle项目。我将这个test.rb文件放在jenkins项目的工作区位置,在这个新创建的项目的configure部分中,在build部分下添加了"Execute Windows Batch Command“,并给出了ruby test.rb。现在我点击了我的项目的Build Now,我希望得到一个浏览器并执行我的Watir脚本。但是,我没有看到任何浏览器被触发,作业失败。下面是我所面临的错误
C:\Users\sony\.jenkins\jobs\test\workspace>ruby test.rb
C:/Ruby22/lib/ruby/2.2.0/net/protocol.rb:158:in `rescue in rbuf_fill': Net::ReadTimeout (Net::ReadTimeout)
from C:/Ruby22/lib/ruby/2.2.0/net/protocol.rb:152:in `rbuf_fill'
from C:/Ruby22/lib/ruby/2.2.0/net/protocol.rb:134:in `readuntil'
from C:/Ruby22/lib/ruby/2.2.0/net/protocol.rb:144:in `readline'
from C:/Ruby22/lib/ruby/2.2.0/net/http/response.rb:39:in `read_status_line'
from C:/Ruby22/lib/ruby/2.2.0/net/http/response.rb:28:in `read_new'
from C:/Ruby22/lib/ruby/2.2.0/net/http.rb:1414:in `block in transport_request'
from C:/Ruby22/lib/ruby/2.2.0/net/http.rb:1411:in `catch'
from C:/Ruby22/lib/ruby/2.2.0/net/http.rb:1411:in `transport_request'
from C:/Ruby22/lib/ruby/2.2.0/net/http.rb:1384:in `request'
from C:/Ruby22/lib/ruby/2.2.0/net/http.rb:1377:in `block in request'
from C:/Ruby22/lib/ruby/2.2.0/net/http.rb:853:in `start'
from C:/Ruby22/lib/ruby/2.2.0/net/http.rb:1375:in `request'
from C:/Ruby22/lib/ruby/gems/2.2.0/gems/selenium-webdriver-2.48.1/lib/selenium/webdriver/remote/http/default.rb:107:in `response_for'
from C:/Ruby22/lib/ruby/gems/2.2.0/gems/selenium-webdriver-2.48.1/lib/selenium/webdriver/remote/http/default.rb:58:in `request'
from C:/Ruby22/lib/ruby/gems/2.2.0/gems/selenium-webdriver-2.48.1/lib/selenium/webdriver/remote/http/common.rb:59:in `call'
from C:/Ruby22/lib/ruby/gems/2.2.0/gems/selenium-webdriver-2.48.1/lib/selenium/webdriver/remote/bridge.rb:664:in `raw_execute'
from C:/Ruby22/lib/ruby/gems/2.2.0/gems/selenium-webdriver-2.48.1/lib/selenium/webdriver/remote/bridge.rb:642:in `execute'
from C:/Ruby22/lib/ruby/gems/2.2.0/gems/selenium-webdriver-2.48.1/lib/selenium/webdriver/remote/bridge.rb:133:in `get'
from C:/Ruby22/lib/ruby/gems/2.2.0/gems/selenium-webdriver-2.48.1/lib/selenium/webdriver/common/navigation.rb:33:in `to'
from C:/Ruby22/lib/ruby/gems/2.2.0/gems/watir-webdriver-0.9.1/lib/watir-webdriver/browser.rb:77:in `goto'
from test.rb:5:in `<main>'
C:\Users\sony\.jenkins\jobs\test\workspace>exit 1
Process leaked file descriptors. See http://wiki.jenkins-ci.org/display/JENKINS/Spawning+processes+from+build for more information
Build step 'Execute Windows batch command' marked build as failure
Finished: FAILURE请让我知道我在这里错过了什么,这样我就可以在我的jenkins中点击build now并执行我的watir脚本后立即看到浏览器被触发。
发布于 2016-01-21 22:54:54
99%的情况是由于浏览器和驱动程序不匹配造成的。可能是它没有在你的路径上找到正确的驱动程序,或者它加载的浏览器版本与其他版本不同。
https://stackoverflow.com/questions/33419285
复制相似问题