如何使用Java在WebDriver中获取按钮的标题/文本

时间:2012-10-22 06:56:03

标签: java selenium-webdriver caption

我有“保存”按钮的以下HTML代码:

<input type="submit" onclick="return confirm('Sure to change global settings?')" value="Save" name="submit">

我想检索按钮的标题。我使用以下代码来做到这一点:

String actualButtonCaption = driver.findElement(By.xpath("//input[@value='Save']")).getText();

我还使用了绝对xpath,如下所示:

String actualButtonCaption = driver.findElement(By.xpath("//html/body/form/div[3]/div[2]/input")).getText();

但遗憾的是,没有检索到任何文字。找到空白/空白文本。有人能帮助我吗?

4 个答案:

答案 0 :(得分:10)

getAttribute方法可用于检索属性值。

在这种情况下,将返回标题:

driver.findElement(By.XPath("//input[@name='submit']")).getAttribute("value");

答案 1 :(得分:1)

尝试将ID与输入相关联,然后按ID查找元素。如果文本出现,那么xpath就会出现问题,您可以使用Firefox的插件分析确切的运行时间xpath。

答案 2 :(得分:1)

这应该有效 -

String actualButtonCaption = driver.findElement(By.name("Submit")).getAttribute("value");

答案 3 :(得分:0)

我使用JavaScript获得了解决方案。代码如下:

WebDriver driver = new FirefoxDriver();
JavascriptExecutor jse = (JavascriptExecutor) driver;
String ss = (String)jse.executeScript("var x=document.getElementsByName('submit')[0].value; return x");
System.out.println("Caption of Save button: " + ss);

工作正常。按钮的标题打印为“保存”