От новичка до гуру: Курсы программирования на CyberDuff

Найти элемент, который находится в теге ‹em› selenium

Я пытаюсь найти элемент со стрелкой (например, раскрывающийся список). Но для этого нет специального HTML-кода. Кажется, стрелка была включена в <em>. по умолчанию его не видно. когда я проверяю элемент, я вижу его --> [::after ==$0] я могу найти элемент em. Но не смог найти стрелку. Кто-нибудь может помочь найти этот локатор? Вот html-код.

<em class="x-btn-split" unselectable="on" id="ext-gn23"><button type="button" id="ext-gn58" class=" x-btn-text"><div class="tbhIcon"></div><span>Relaties</span></button>
::after ==$0
</em>

Ответы:


1

Наблюдал такое поведение с отделом продаж (в частности, с сервисным облаком). Селекторы Selenium CSS не поддерживают тег ::after. В качестве обходного пути вы можете использовать класс действий и динамически получать координаты и щелкать элемент. У нас он стабильно работал, несмотря на разрешение экрана.

try{
    Actions action = new Actions(driver);
    action.moveToElement(driver.findElement(By.xpath("
       insert locator")), 245,15).click().build().perform();
}
catch(exception ex){
    //insert relevant log msg here
}

Координаты в этом фрагменте жестко закодированы. Но вы можете использовать findElement отдельно с getAttribute("x") и getAttribute("y"), сохранять эти значения в переменных и манипулировать ими, чтобы динамически получить желаемое местоположение на экране.

27.09.2016
  • Большое спасибо. Я мог найти элемент em. но стрелка находится рядом с этим элементом. Как получить координаты (x) и (y) стрелки? Есть идеи? 27.09.2016
  • его можно найти с помощью xpath? 27.09.2016
  • Привет Эла, да. Вы можете использовать xpath всего элемента. Тот же самый, который вы используете в операторе действий. //em[@class='x-btn-split' and span[.='Relaties']] Насколько я вижу. В качестве альтернативы вы можете использовать оригинальный css, который вы использовали, который находит весь элемент, включая стрелку, и работает оттуда. 27.09.2016
  • Вы также можете использовать родительский элемент em - вероятно, это должен быть div, содержащий всю кнопку, включая стрелку. 27.09.2016
  • стрелка не включена в элемент em :( Когда я пытаюсь щелкнуть, она просто щелкает за пределами стрелки, где присутствует em. Спасибо @user2021160 27.09.2016
  • Сможете ли вы вставить html объекта, включая родителя? Это может быть вопрос рассмотрения иерархии. 28.09.2016
  • Новые материалы

    Я предполагаю, что вы имеете в виду методы обработки категориальных данных.
    Я предполагаю, что вы имеете в виду методы обработки категориальных данных. Пожалуйста, проверьте мой пост Инструментарий специалиста по данным для кодирования категориальных переменных в..

    Игра в прятки с данными
    Игра в прятки с данными Я хотел бы, чтобы вы сделали мне одолжение и ответили на следующие вопросы. Гуглить можно в любое время, здесь никто не забивается. Сколько регионов в Гане? А как..

    «Раскрытие математических рассуждений с помощью Microsoft MathPrompter и моделей больших языков»
    TL;DR: MathPrompter от Microsoft показывает, как использовать математические рассуждения с большими языковыми моделями; 4-этапный процесс для улучшения доверия и рассуждений в математических..

    Раскройте свой потенциал в области разработки мобильных приложений: Абсолютная бесплатная серия
    Глава 6: Работа в сети и выборка данных Глава 1: Введение в React Native Глава 2: Основы React Native Глава 3: Создание пользовательского интерфейса с помощью React Native Глава 4:..

    Все о кейсах: Camel, Snake, Kebab & Pascal
    В программировании вы сталкивались с ними при именовании переменной, класса или функции. Поддержание согласованности типов и стилей случаев делает ваш код более читабельным и облегчает совместную..

    Как работает дистанционное парное программирование и почему оно может изменить вашу жизнь
    Серебряная пуля от одиночества и отвлекающих факторов во время обучения программированию Независимо от того, работаете ли вы или учитесь удаленно, велика вероятность, что одиночество и..

    🔥🔥👉Питон 🆚Javascript👈🔥🔥
    Сегодня Python и Javascript потрясают мир в области ИТ. Все хотят выучить Python и Javascript, чтобы получить высокооплачиваемую работу. Различные фреймворки Python и Javascript расширяют..