我有以下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')]"}
答案 0 :(得分:2)
好像您正在尝试获取所有属性值等于dialogMessage的元素,而是尝试使用此xpath:
//*[contains(@id, 'dialogMessage')]
或
//*[@id='dialogMessage']