繁体   English   中英

无法在 Selenium Java 中定位图像 xpath

[英]Unable to locate image xpath in Selenium Java

我在使用 xpath 无法定位元素时遇到了一些麻烦,并且正在寻找一些输入,如果有人可能知道问题可能是什么。 这是我试图访问的元素。

<body id="tinymce">
  <p>
    <img class="some-class-name" src="/path/to/url" data-macro-name="macro-name" data-macro- 
     parameters="macro|params" data-macro-schema-version="1">
    <span id="_caret" data-mce-bogus="true" style=""><u></u></span>
  </p>
</body>

这是我必须找到并使用它的页面对象代码。

@FindBy(xpath = "//*[@id=\"tinymce\"]/p/img")
private WebElement cnfGraph;

public void verifyGraphEditPresent()  {
    WebDriverWait wait = new WebDriverWait(driver, 10);
    wait.until(ExpectedConditions.visibilityOf(cnfGraph));
}

我不断收到以下错误

no such element: Unable to locate element: {"method":"xpath","selector":"//*[@id="tinymce"]/p/img"}

我也尝试将定位器更改为图像的类名或主体的 id,但没有任何结果。

任何帮助或建议表示赞赏。 谢谢

我能够通过将驱动程序切换到 html 所在的 iframe 来解决这个问题。

public void verifyGraphEditPresent()  {
    driver.switchTo().frame(driver.findElement(By.id("wysiwygTextarea_ifr")));
    WebDriverWait wait = new WebDriverWait(driver, 10);
    wait.until(ExpectedConditions.visibilityOf(cnfGraph));
    driver.switchTo().defaultContent();
} 

解决方案来自这里https://stackoverflow.com/a/24254740/11865571由@MentallyRecursive 在评论中提供

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM