当按钮没有id和title但是有悬停状态时,如何识别并点击selenium webdriver中的按钮?

时间:2015-09-16 09:34:06

标签: java selenium selenium-webdriver

有谁能告诉我如何识别并点击没有标题的按钮?

<div class="ui-fileupload-buttonbar ui-widget-header ui-corner-top">
  <span class="ui-button ui-widget ui-state-default ui-corner-all ui-button-text-icon-left ui-fileupload-choose">
  <span class="ui-button-icon-left ui-icon ui-c ui-icon-plusthick"></span>
  <span class="ui-button-text ui-c">Browse</span>
  <input id="j_idt126:attachments:j_idt128_input" name="j_idt126:attachments:j_idt128_input" type="file">

我已尝试过以下代码,但它无效

By.xpath("//button[@type='button']/span[text()='Browse']"))).click();

如何使用Java在Selenium WebDriver中解决此问题?将不胜感激任何帮助。

1 个答案:

答案 0 :(得分:2)

如果单击文件上传输入,您将获得无法控制的系统文件上载窗口。

而是找到元素并将绝对路径发送到您要上传的文件:

WebElement uploadInput = driver.findElement(By.xpath("//span[. = 'Browse']/following-sibling::input[@type='file']"));
uploadInput.sendKeys("/absolute/path/to/a/file");

在这里,我们根据之前兄弟的Browse文字定位输入。