一尘不染

selenium-检查页面上是否显示图像

selenium

我正在为网络相册应用程序创建一套Selenium测试。我想测试图像是否实际显示(它包含有效的图像数据)。这样的事情可能吗?


阅读 318

收藏
2020-06-26

共1个答案

一尘不染

在图像的src符合预期但图像未显示在页面上之前,我遇到过类似的情况。

您可以使用JavaScriptExcecutor检查图像是否显示。

使用以下代码-传递WebElement(图像)-

 Object result = ((JavascriptExecutor) driver).executeScript(
   "return arguments[0].complete && "+
   "typeof arguments[0].naturalWidth != \"undefined\" && "+
   "arguments[0].naturalWidth > 0", image);

    boolean loaded = false;
    if (result instanceof Boolean) {
      loaded = (Boolean) result;
      System.out.println(loaded);
    }

通过执行此操作,可以验证图像是否已实际加载到网页上。

2020-06-26