无法使用webdriver点击Chrome浏览器中iframe内的按钮

时间:2014-12-12 10:00:52

标签: ruby google-chrome selenium watir-webdriver

enter image description here

在上面的HTML页面中,我可以点击'选择文件' Internet Explorer中的按钮使用

@ browser.frame(:name,' fileUI')。file_field(:name,' isoFile')。set(path)

当我尝试为Chrome浏览器使用相同的代码时,它无法正常工作并出现以下错误: enter image description here 我点击此按钮的任何方式?

1 个答案:

答案 0 :(得分:3)

在Watir-Webdriver v0.6.5中,对如何定位框架进行了更改:

  • 之前(即0.6.5之前),browser.frame找到了frame和iframe元素。
  • 现在,browser.frame找到框架元素,browser.iframe找到iframe元素。

由于您正在处理iframe,因此您需要使用iframe代替frame方法:

@browser.iframe(:name, 'fileUI').file_field(:name, 'isoFile').set(path)

这与Internet Explorer一起使用的原因可能是由于使用了Watir metagem。当使用其他浏览器时,使用IE和Watir-Webdriver时,Watir gem将加载Watir-Classic。对frame方法的更改仅在Watir-Webdriver中进行,在Watir-Classic中尚未更改。