Как найти правильный флажок локатор - PullRequest
0 голосов
/ 02 февраля 2019

Я пишу автоматический тест в Selenium, и у меня проблема с локатором.Адрес веб-сайта: https://talixo.pl/register/?next=/. Я не могу найти правильный локатор для последних трех флажков.В зависимости от того, какой локатор я использую, я получаю элемент error ', который не взаимодействует, или отмечен флажок, но на новой вкладке открывается страница, которая находится под ссылкой «Read more».У меня нет этой проблемы с флажком без ссылки «Подробнее».: элемент не взаимодействует (информация о сеансе: chrome = 71.0.3578.98) (информация о драйвере: chromedriver = 2.45.615291 (ec3682e3c9061c10f26ea9e5cdcf3c53f3f74387), платформа = Windows NT 10.0.17134 x86_64) (ПРЕДУПРЕЖДЕНИЕ: сервер не предоставил информацию о длительности команды)или время ожидания: 0 миллисекунд

Ответы [ 2 ]

0 голосов
/ 02 февраля 2019

Попробуйте это. Это должно сработать.

driver.get("https://talixo.pl/register/?next=/");
            Thread.sleep(4000);
            List<WebElement> listOfElements = 
driver.findElements(By.xpath("//span[@class='label-body']"));

JavascriptExecutor executor = (JavascriptExecutor) driver;
for (int i=0; i<listOfElements.size();i++){
               executor.executeScript("arguments[0].click();",listOfElements.get(i));               
              }

Пожалуйста, дайте мне знать, если это работает.

0 голосов
/ 02 февраля 2019

Я пошел по указанному URL и заметил, что последние три флажка, на которые нужно нажать, это «:: before», который является псевдоэлементом.Вы пробовали JavascriptExecutor?Вы можете попробовать использовать CSSSelector для идентификации элемента.

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