【发布时间】:2019-02-23 23:11:26
【问题描述】:
我正在使用所有浏览器中的两个文件上传按钮自动创建一个页面。这是代码sn-p:
WebElement thumbnailClick = driver.findElement(By.id("PageForm_tile_src"));
jse.executeScript("scroll(0, 250)");
thumbnailClick.click();
这是点击第一个上传按钮,这在 Chrome 中完美运行,但尝试在 Firefox gecko 驱动程序上运行会引发 InvalidArgumentException: Cannot click <input type=file> elements 错误
我必须通过 id 找到这些元素,因为此页面上有多个上传按钮。当手动操作很容易并且可以在任何其他浏览器上运行时,为什么 firefox 会拒绝此点击?
添加元素的HTML:
<input name="PageForm[tile_src]" id="PageForm_tile_src" type="file">
【问题讨论】:
-
你确定元素在时间码执行吗?你试过线程睡眠吗?
-
是的,它确实存在,我确实尝试过睡眠以确保这一点。抛出同样的错误。如果它还没有加载,它会抛出一个 ElementNotFound 错误
-
@NickaBrick 用相关的 HTML 更新问题
-
@Newcontributor 添加了 HTML 元素,但是考虑到它在 Chrome 上完美运行,驱动程序语句不是问题,并且 firefox 上的 HTML 与 Chrome 完全相同
-
你试过这个吗? stackoverflow.com/questions/9726005/… 使用 xpath 导航可能会更棘手,因为您有多个上传按钮,但我认为它可能会成功-.-
标签: java selenium testng selenium-firefoxdriver