#java #html #selenium #xpath
#java #HTML #селен #xpath
Вопрос:
Я получаю эту ошибку при попытке найти веб-элемент для тестирования кнопки facebook «создать страницу»> «зарегистрироваться» в объектной модели страницы. Я пробовал различные варианты, например, по имени класса (селектор CSS), а также путем копирования системного xpath, но получал то же сообщение об ошибке
org.openqa.selenium.Исключение NoSuchElementException: нет такого элемента: невозможно найти элемент
/driver.findElement(By.xpath("//*[@id='blueBarDOMInspector']/div/div[1]/div/div/span/a")).click();
driver.findElement(By.className("_42ft _4jy0 signup_btn _4jy4 _4jy2 selected _51sy"));
Ответ №1:
Похоже, что имя вашего класса генерируется случайным образом — вы можете проверить это, повторно посетив ту же страницу из разных браузеров (или вы можете попробовать инкогнито). Если это правда, вам нужен другой способ работы с элементом. Некоторые примеры:
- Если эта
Sign Up
кнопка — используйте XPath и найдите текст в этом элементе - Подумайте, может ли ваша задача быть решена без использования взаимодействия с пользовательским интерфейсом (или частью задачи). Прочитайте об API facebook и, если возможно, используйте это вместо пользовательского интерфейса. Это сэкономит вам много времени и хлопот в будущем.