如何使用ruby和Selenium2执行隐藏的输入文件上载

时间:2014-01-29 21:19:15

标签: ruby selenium input selenium-webdriver hidden

我正在使用ruby gem selenium-webdriver(2.39.0)自动测试网站。

有一个带有隐藏输入标记的网页,当用户点击其他元素时,该网页会填充系统文件选择对话框中的路径。

我们已经能够使用element.send_keys远程上传输入对话框的文件。然而,这最近在IE上破坏了 - 我们现在在使用send_keys时出现“元素不可见”错误。在阅读了关于selenium 2的设计目标以仅镜像用户交互之后,我希望在某些时候这也会打破其他浏览器。

由于selenium 1的execute_script()方法似乎在这个gem中不可用,我无法修改输入标记是可见的。

我认为其他人已经解决了这个问题 - 如何执行文件上传?

1 个答案:

答案 0 :(得分:1)

该版本的selenium-webdriver gem

存在相同的方法

driver.execute_script("document.getElementById('hidden').value = #{value};")

这是文档:

http://selenium.googlecode.com/svn/trunk/docs/api/rb/Selenium/WebDriver/Driver.html#execute_script-instance_method