NoSuchElementException: невозможно найти элемент во всплывающем окне - PullRequest
0 голосов
/ 10 января 2019

Я уже переключился на всплывающее окно, потому что кнопка во всплывающем окне может быть нажата, но я не могу найти элемент переключателя.

Это мой код:

driver.findElement(By.id("searchPrimIndustryImage")).click();

String mainWindow = driver.getWindowHandle();

    Set<String> s1 = driver.getWindowHandles();
    Iterator<String> i1 = s1.iterator();
    while(i1.hasNext())
    {
        String popupWindow = i1.next();
        if(!mainWindow.equalsIgnoreCase(popupWindow))
        {
            driver.switchTo().window(popupWindow);
            driver.findElement(By.id("Image1")).click();
            driver.findElement(By.xpath("//input[@value='28049']")).click();
            driver.findElement(By.id("Image5")).click();
        } 
    }

Элемент переключателя - это элемент с xpath.

1 Ответ

0 голосов
/ 10 января 2019

Если вы уверены, что xpath правильный и элемент действительно присутствует на странице, попробуйте использовать wait. Попробуйте добавить это, прежде чем щелкнуть элемент xpath:

WebDriverWait wait = new WebDriverWait(driver,30);
WebElement element = wait.until(ExpectedConditions.elementToBeClickable(By.xpath("//input[@value='28049']")));

Вам понадобится импорт

import org.openqa.selenium.support.ui.WebDriverWait;
import org.openqa.selenium.support.ui.ExpectedConditions;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...