#selenium-webdriver #webdriverwait
#selenium-webdriver #webdriverwait
Вопрос:
Допустим, у меня есть элемент со значением = 1. Затем я нажимаю на какую-то кнопку, загрузка занимает некоторое время, а затем значение элемента обновляется, скажем, значение = 2. Теперь, что я хочу сделать — как только я нажал на кнопку, я хочу постоянно проверять значение элемента, ждать в течение периода времени, и как толькопри обновлении значения (т.Е. 2) ожидание должно прекратиться.
В настоящее время я использую простой Thread.sleep (миллисекунды), чтобы просто явно подождать некоторое время.
Я надеялся использовать WebDriverWait с ожидаемыми условиями в этом сценарии, но не уверен, как выполнить постоянную проверку значения и завершить ожидание, как только значение будет обновлено до 2.
Пожалуйста, подскажите, как я могу этого добиться?
Комментарии:
1. Ожидаемые условия имеют разные методы для достижения этого. (т.е. attributetobe или attributecontains )
Ответ №1:
Мое решение на Java:
- По locator = По.xpath(«YourXPath»); // Вы можете использовать другие: cssSelector, id и т.д.
- WebDriverWait wait = новый WebDriverWait(драйвер, длительность.секунд (время ожидания))); // Время ожидания является целочисленным значением
- wait.until(ожидаемые условия.attributeToBe(локатор, «значение», String.valueOf(2)));