1.А сможете пошагово объяснить, как такой путь составить? ну саму логику и действия \ куда смотреть
2.как например смотря на код элемента узнать что я смотрю именно на второй элемент такого класса ?
3.а как будет такой же путь выглядеть на xpath ?
4. :nth-child(2) это выбор второго дочернего элемента ? а почему .last не сработает в данном случае ?
у меня были попытки найти элемент вот так
SelenideElement selectorArea = $(className(“wizard__cargo-from_header_location”));
selectorArea.$(“form-check-label.last”).click();
было бы здорово если бы вы объяснили в чем я ошиблась и что делаю не так
Спасибо.
Вам нужен инпут, сначала ищем инпут - видим что на странице таких элементов 48. Надо сузить поиск. Смотрим какие блоки есть, Откуда-куда-Груз - пробуем найти сначала эти блоки, выше я привёл пример что можно найти просто по номеру, либо, да как вы оказались правы, по классу, хороший уникальный класс, именно для этого блока. Теперь найдя блок можно ещё раз поискать инпут в нём - получается уже только 2 элемента. Опять же можно обращаться по номеру, т.к. элементов может стать больше и ваш локатор .Ласт уже может ссылаться на не тот элемент.
И я смотрю вы используете селенид - тогда лучше элементы радио-баттоны - делать .selectRadio(true) а не кликать по ним.
и последний вопрос)
что если я вижу в чужом коде какой-то путь предположим что он слишком сложно написан
можно ли как-то в инструментах разработчика найти элемент вставить путь до него в какую нибудь поисковую строку.
я помню такая штука прокатывала с плагином для фф FireBug, но там можно было в поисковую строку положить xpath только
Также будет полезно для выпадающих списков и подсказок которые открываются по наведению, через F8 в хроме можно запаузить сессию и список не будет скрываться когда захотите подсветить его инспектором. Но иногда нужно помучатся чтобы вовремя запаузить
А вообще для таких целей полезно попросить FE чтобы добавили к элементу атрибут по типу [data-testid=‘checkboxname’], так как после редизайна жлемент может уйти в другой блок ну или поменяется местами с другим элементом, приедтся делать много лишней работы.