Windows XP VM中的Selenium InvalidSelectorError

时间:2014-03-26 17:26:39

标签: selenium jruby watir-webdriver

我们有一个测试自动化套件,使用JRuby 1.7.4,页面对象和针对IE8运行的Watir-webdriver。在导航栏的页面对象中,我们将其用于帮助链接:

link(:help, :id => 'menu_help')

我们本地计算机上的一切运行正常,但是当我们将其部署到Windows VM并运行单击“帮助”链接的测试时,我们会收到以下错误:

Selenium::WebDriver::Error::InvalidSelectorError: The xpath expression './/a[@id='menu_help']' cannot be evaluated or does not result in a WebElement

这实际上发生在我们尝试访问的任何链接上,无论我们使用哪种方法在DOM中查找元素。我可以自己去页面,在开发人员工具中看到带有正确id的锚标签。我在Windows VM上的IRB控制台中运行了跟随,并在最后一行得到了相同的错误:

require 'watir-webdriver'
@browser = Watir::Browser.new :ie
@browser.goto '<app url is here>'
link = @browser.link :id => 'menu_help'
link.exists? 

现在,我能看到的唯一区别是我们在开发机器上使用Windows 7,而我们的虚拟机仍在运行XP。否则,我们的开发机器和XP VM之间的所有版本的IEBrowserDriver,JRuby和watir-webdriver都是相同的。我想到了获得XP模式的想法,看看我能不能在那里工作,但与此同时,我在这里做错了吗?

编辑:我在我的机器上安装了Windows XP Mode,使用我们的开发机器和其他Windows XP VM上使用的相同版本设置了JRuby,它可以在IRB中使用,所以我&# 39;我认为它可能是其他Windows XP VM上的配置问题。

0 个答案:

没有答案