我是新手测试自动化,我遇到了一个问题。我使用ruby 1.9.3,watir-webdriver 0.9.3,chromedirver 2.24,yosemite osx和sublime 2 / terminal来执行。我试图让方法'转到'把我带到google.com,但我收到了这个错误。
rb:5:in `<main>': undefined method `goto' for nil:NilClass (NoMethodError)
这是我的代码
require 'rubygems'
require 'watir-webdriver'
@Browser = Watir::Browser.new :chrome #You can also use firefox
@Browserc.goto("http://google.com")
我尝试过Firefox,它会打开一个新标签。我也试过使用chrome和浏览器打开“data;”在网址中。我似乎无法在SO或在线找到答案。在此先感谢您的任何帮助。
答案 0 :(得分:1)
数据;是浏览器启动时在URL中设置的默认字符串。似乎找不到goto方法。您可能遇到配置问题。
一个可能的问题可能是你在调用goto时使用了@Browserc而不是@Browser。
试试
@Browser.goto("http://google.com")
答案 1 :(得分:1)
导致问题的@Browser
语句中goto
旁边的问题是c。
我建议总是使用下面的内容。使用@Browser
(以字母开头)不是最佳做法。
require 'rubygems'
require 'watir-webdriver'
browser = Watir::Browser.new :chrome #To open chrome browser
browser = Watir::Browser.new:firefox #To open Firefox browser
browser.goto "http://www.google.com"
答案 2 :(得分:0)
此修复程序适用于ubuntu:
我卸载了chromedriver并直接从他们的网站下载了chrome。可执行文件应存储在/ usr / bin中。最后使用以下代码:
require "rubygems"
require "watir"
browser = Watir::Browser.new :chrome
browser.goto('google.com')
PS:您不再需要使用watir-webdriver,因为watir现在包含在最新版本中。这就是为什么此示例中不包含它的原因。