Selenium WebDriver匹配相似的xpath

时间:2019-05-22 10:10:41

标签: java selenium xpath webdriver

我有以下xpath,WebDriver应该以相同的方式处理,我需要从中获取文本内容。

//*[@id="dialogMessage"]/div[3]
//*[@id="dialogMessage"]/div[3]/p
//*[@id="dialogMessage"]/div[3]/p/span[2]

我尝试使用此代码来匹配上述所有代码。

String result_text = driver.findElement(By.xpath("//*[contains(@value, 'dialogMessage')]")).getText();

在每个页面加载中,页面上仅存在这些xpath之一。我收到以下错误消息:

org.openqa.selenium.NoSuchElementException: no such element: Unable to locate element: {"method":"xpath","selector":"//id[contains(@value, 'dialogMessage')]"}

1 个答案:

答案 0 :(得分:2)

好像您正在尝试获取所有属性值等于dialogMessage的元素,而是尝试使用此xpath:

//*[contains(@id, 'dialogMessage')]

 //*[@id='dialogMessage']