У меня возникли трудности с сложным выбором, который не будет работать с обычными методами Selenium api. Итак, я должен использовать Javascript-исполнителя. Я до сих пор не смог правильно выбрать параметры из раскрывающегося списка = Откуда? и Какое место назначения?Использование Javascript Executor для выбора из тега Select
С приведенным ниже кодом страница, кажется, обновляется, когда я нажимаю «Поиск». Может быть, селектор css, переданный JS, ошибочен?
Сайт тестируемый: https://club18-30.com/club18-30
private String whereFromText = "LGW"
private String whereToText = "IBZ"
public void setDepartureAirport(String whereFromText)
selectOption(whereFromText);
}
public void setDestinationAirport(String whereToText) {
selectOption(whereToText);
}
public void submitSearchRequest() throws InterruptedException {
By searchButtonLocator = By.xpath(searchButtonLocatorPath);
click(searchButtonLocator);
By searchResultsLocator = By.xpath(searchResultsLocatorPath);
waitForIsDisplayed(searchResultsLocator, 180);
}
public void selectOption(String option) {
String script =
"function selectOption(s) {\r\n" +
" var sel = document.querySelector('.custom-select-options');\r\n" +
" for (var i = 0; i < sel.options.length; i++)\r\n" +
" {\r\n" +
" if (sel.options[i].text.indexOf(s) > -1)\r\n" +
" {\r\n" +
" sel.options[i].selected = true;\r\n" +
" break;\r\n" +
" }\r\n" +
" }\r\n" +
"}\r\n" +
"return selectOption('" + option + "');";
javaScriptExecutor(script);
}
Ваше заявление запрашивает учетные данные. Не могли бы вы предоставить учетные данные или дать нам HTML? – Buaban
@Buaban - нет учетных данных? Я не вижу учетных данных в любом месте – Steerpike
Вы можете сохранить учетные данные, или ваш компьютер может находиться в том же домене, чтобы он автоматически аутентифицировался. – Buaban