selectElement: в меню, созданном с помощью ul и li, определены события JavaScript.
optionElement: после выбора в selectElement, параметры внутри select загружаются, и я проверяю, загружены ли они.
optionToSelect: Состоит из элементов li внутри selectElement.
isLoadingExpected: после выбора некоторых параметров на странице появляется анимация загрузки, которую мне не удалось предотвратить.
`public static void selectItem(String selectElement, String optionElement , String optionToSelect, int isLoadingExpected) выдает исключение {
WebDriverWait waitElement = new WebDriverWait(chromeDriver, Duration.ofSeconds(10));
Код: Выделить всё
if (isLoadingExpected == 1) {
waitElement.until(ExpectedConditions.visibilityOfElementLocated(By.className("loading")));
waitElement.until(ExpectedConditions.invisibilityOfElementLocated(By.className("loading")));
}
waitElement.until(ExpectedConditions.elementToBeClickable(By.xpath(selectElement)));
waitElement.until(ExpectedConditions.numberOfElementsToBeMoreThan(By.xpath(optionElement), 1));
WebElement selectWebElement = chromeDriver.findElement(By.xpath(selectElement));
selectWebElement.click();
WebElement optionWebElement = chromeDriver.findElement(By.xpath(optionToSelect));
optionWebElement.click();
}`
Код: Выделить всё
selectItem(Elements.ApplicationService.xPath, Elements.ServiceOptions.xPath, ApplicationServices.Windows.xPath, 0); selectItem(Elements.ResolutionState.xPath, Elements.ResolutionStateOptions.xPath, ResolutionState.Continues.xPath, 1);
Подробнее здесь: https://stackoverflow.com/questions/790 ... ge-loading