我是 Selenium 的新手,我正在尝试使用 WebDriver 上传文件。在这里,我尝试使用 dom 元素单击浏览按钮,如下所示:
selenium.type("document.forms['UploadForm'].elements['browsebutton']",file.getAbsolutePath());
但由于该方法不起作用,我尝试使用 WebDriver 元素点击浏览按钮,如下所示:如何将我的 dom 元素更改为 xpath 或 css 选择器,如下所示?
driver.findElement(By.cssSelector("input[type=\"file\"]")).click();
我不能把 xpath 写成
selenium.click("xpath="//input[@name='uplaod' and @value='browsebutton']");
因为我有多个具有相同名称和值的浏览按钮。所以我需要选择使用 dom 元素本身。我该怎么做?
提前感谢您的帮助。
Dominik 我尝试使用下面的 xpath,因为没有名称属性:但不工作
String upload="(//input[@name='bulkUnBlockUploadForm' and @value='requestFile'])[2]";
String button="(//input[@name='bulkUnBlockUploadForm' and @value='process'])[2]";
我也尝试使用 id:不工作
String upload="(//input[@id='content' and @value='requestFile'])[1]";
String button="(//input[@id='content' and @value='process'])[1]";
问题出在我的 jsp 中,我有 2 个具有相同 id 和相同值但形式不同的浏览按钮。我为每个具有相同 id 和相同值但形式不同的浏览按钮有 2 个提交按钮。所以当我使用上面的方法是同时点击提交按钮