После уменьшения масштаба невозможно найти веб-драйвер в селене - PullRequest
0 голосов
/ 08 января 2020

В моем приложении мне нужно уменьшить масштаб, а затем найти веб-элемент. Я уменьшаю, используя Robot robot = new Robot (). Успешно уменьшено. После этого он не находит веб-элемент. Я пытался с явным ожиданием.

Robot robot = new Robot();

 Thread.sleep(5000);
 System.out.println("About to zoom out");
 for (int i = 0; i < 3; i++) {
 robot.keyPress(KeyEvent.VK_CONTROL);
 robot.keyPress(KeyEvent.VK_SUBTRACT);
 robot.keyRelease(KeyEvent.VK_SUBTRACT);
 robot.keyRelease(KeyEvent.VK_CONTROL);
 }



new WebDriverWait(driver,50).until(ExpectedConditions.visibilityOfElementLocated(By.cssSelector(prop.getProperty("mpath"))))
            .click();
WebElement module1 = driver.findElement(By.cssSelector(prop.getProperty("msite")));
    module1.click() ;

1 Ответ

0 голосов
/ 08 января 2020

Я точно не знаю ваш случай, но вот что я бы попробовал сделать на вашем месте.

1. Попробуйте уменьшить масштаб браузера другим способом.

Вместо использования класса Robot, попробуйте использовать:

element.sendKeys(Keys.chord(Keys.CONTROL, "-"))   (Keys.COMMAND on MacOS).

Вы также можете попробовать класс Actions, если это не ' т работы.

2. Попробуйте снова найти этот элемент после изменения размера.

Не уверен, как он работает при изменении размера страницы, но я знаю, что после refre sh идентификатор WebElement может измениться, что может привести к ваша проблема.

В любом случае, если ничего из этого не помогло, попробуйте опубликовать код ошибки, чтобы мы могли помочь вам.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...