我一直在苦苦挣扎,试图获得一个简单的selenium-webdriver ruby测试脚本来执行 .
我真的很感激,如果有人能够解释我如何调试这个,或者如果有人之前已经解决了这个问题,那就解决它了 .
我的环境设置如下:
运行ruby版本的Mac OS X:ruby-2.0.0-p247
宝石安装:
-
bundler(1.3.5)
-
bundler-unload(1.0.1)
-
子进程(0.3.9)
-
ffi(1.9.0)
-
multi_json(1.7.8)
-
rake(10.1.0)
-
rubygems-bundler(1.2.2)
-
rubyzip(0.9.9)
-
rvm(1.11.3.8)
-
selenium-webdriver(2.33.0)
-
websocket(1.0.7)
脚本执行:
#!/usr/bin/env ruby
require "selenium-webdriver"
driver = Selenium::WebDriver.for :firefox
driver.navigate.to "http://google.com"
element = driver.find_element(:name, 'q')
element.send_keys "Hello WebDriver!"
element.submit
puts driver.title
driver.quit
这是执行脚本时出现的错误:
/.rvm/rubies/ruby-2.0.0-p247/lib/ruby/2.0.0/json/common.rb:155:in“parse”:来自〜/ .rvm的未初始化的常量JSON :: Parser(NameError) /gems/ruby-2.0.0-p247/gems/multi_json-1.7.8/lib/multi_json/adapters/json_common.rb:16:in'load'来自〜/ .rvm / gems / ruby-2.0.0-p247 /gems/multi_json-1.7.8/lib/multi_json/adapter.rb:19:in'load'来自〜/ .rvm / gems / ruby-2.0.0-p247 / gems / multi_json-1.7.8 / lib / multi_json .rb:118:在'load'来自〜/ .rvm / gems / ruby-2.0.0-p247 / gems / selenium-webdriver-2.33.0 / lib / selenium / webdriver / common / json_helper.rb:11:in来自〜/ .rvm / gems / ruby-2.0.0-p247 / gems / selenium-webdriver-2.33.0 / lib / selenium / webdriver / firefox / profile.rb的
json_load':30:来自〜/的
default_preferences' .rvm / gems / ruby-2.0.0-p247 / gems / selenium-webdriver-2.33.0 / lib / selenium / webdriver / firefox / profile.rb:221:来自〜/ .rvm / gems / ruby的update_user_prefs_in' -2.0.0-p247 / gems / selenium-webdriver-2.33.0 / lib / selenium / webdriver / firefox / profile.rb:79:来自〜/ .rvm / gems / ruby-2.0.0-p247的
layout_on_disk' /gems/selenium-webdriver-2.33 .0 / lib / selenium / webdriver / firefox / launcher.rb:58:来自〜/ .rvm / gems / ruby-2.0.0-p247 / gems / selenium-webdriver-2.33.0 / lib / selenium的create_profile' /webdriver/firefox/launcher.rb:34:in启动时阻止来自〜/ .rvm / gems / ruby-2.0.0-p247 / gems / selenium-webdriver-2.33.0 / lib / selenium / webdriver / firefox /socket_lock.rb:20:in'lock'来自〜/ .rvm / gems / ruby-2.0.0-p247 / gems / selenium-webdriver-2.33.0 / lib / selenium / webdriver / firefox / launcher.rb:32 :在'launch'中~~ .rvm / gems / ruby-2.0.0-p247 / gems / selenium-webdriver-2.33.0 / lib / selenium / webdriver / firefox / bridge.rb:24:in
initialize'from 〜/ .rvm / gems / ruby-2.0.0-p247 / gems / selenium-webdriver-2.33.0 / lib / selenium / webdriver / common / driver.rb:31:来自〜/ .rvm / gems的new' /ruby-2.0.0-p247/gems/selenium-webdriver-2.33.0/lib/selenium/webdriver/common/driver.rb:31:in
for'from〜/ .rvm / gems / ruby-2.0.0 -p247 / gems / selenium-webdriver-2.33.0 / lib / selenium / webdriver.rb:67:in`for'