Невозможно перечислить изображения, атрибут заголовка которых отсутствует в селене. - PullRequest
0 голосов
/ 16 октября 2019

Ниже мой код, я пытаюсь получить src изображения, атрибут title которого отсутствует, но он не работает. С кодом ниже отображаются все изображения, но его поиск не выполняется без заголовка

public void checkimagetitle() {

    suites.setupEnviroment();
    WebDriver driver = suites.getWebDriver();
    driver.get(suites.WEB_PATH);
    Dimension d = new Dimension(1455, 900);
    driver.manage().window().setSize(d);

    try {
        List<WebElement> listImages = driver.findElements(By.tagName("img"));

        System.out.println("No. of Images: " + listImages.size());

        int counter = 0;
        for (WebElement image : listImages) {
            boolean title = image.getAttribute("title") != null;

            if (title = false) {
                counter++;
                System.out.println(image.getAttribute("src"));
            } else {
                System.out.println("failed");

            }
        }
        System.out.println("No. of total images without title: " + counter);

        Logger.getLogger("results").log(new LogRecord(Level.INFO,
                MethodHandles.lookup().lookupClass().getCanonicalName() != null ? "success" : "failure"));

    } catch (Exception e) {
        Logger.getLogger("results").log(new LogRecord(Level.INFO,
                MethodHandles.lookup().lookupClass().getCanonicalName() == null ? "success" : "failure"));
        System.out.println(e);
    }
    driver.close();

}

Заранее спасибо!

1 Ответ

0 голосов
/ 17 октября 2019

Нашли более простое решение. Вместо того, чтобы проходить по всем изображениям, вы можете непосредственно обнаруживать элементы img без атрибута title, используя XPATH, например

//img[not(@title)]
List<WebElement> listImageswithoutTitle = driver.findElements(By.xpath("//img[not(@title)]"));
...