Перейти к содержимому

Фотография

реально запарился с xpath


  • Авторизуйтесь для ответа в теме
Сообщений в теме: 11

#1 selevo

selevo

    Постоянный участник

  • Members
  • PipPipPip
  • 156 сообщений
  • ФИО:Сергей

Отправлено 10 марта 2012 - 20:01

поставил расширение в FF которое показывает xpath путь к элементу
вот такой путь выдал: html/body/center/font/table[3]/tbody/tr/td[1]/table[5]/tbody/tr[1]/td[6]/a/img
А селениум выдал вот что :<tr>
click <td>xpath=(//img[@alt='^'])[3]</td>
ну и как теперь жить ?
Как искать пути,у меня уже крыша едет от этих скобок и закорючек,что делать !?
  • 0
Действительность,собой определяй.
(с)из лучших на свете книг "Звенящие кедры России"

#2 checo

checo

    Опытный участник

  • Members
  • PipPipPipPip
  • 400 сообщений
  • Город:Н.Новгород

Отправлено 11 марта 2012 - 08:29

Видимо, оба пути правильные, только в 1-м случае имеем full path, а во 2-м - с использованием рекурсивного поиска по атрибутам.
Если читали документацию по xpath на MSDN, все закорючки должны быть знакомые.
  • 0

#3 selevo

selevo

    Постоянный участник

  • Members
  • PipPipPip
  • 156 сообщений
  • ФИО:Сергей

Отправлено 11 марта 2012 - 09:08

я читал от микрософта...
мозг устал после трёх предложений :)
ну да это одно и тоже.
Очень неудобно что selenium IDE при клике правой кнопкой мышки по ссылке не предлагает вариант с xpach
  • 0
Действительность,собой определяй.
(с)из лучших на свете книг "Звенящие кедры России"

#4 soleksenko2702

soleksenko2702

    Постоянный участник

  • Members
  • PipPipPip
  • 193 сообщений
  • ФИО:Олексенко Сергей

Отправлено 11 марта 2012 - 12:38

Лично я использую FireBug и firepath для firefox.
И еще очень полезная информация здесь: http://www.simple-ta...-rosetta-stone/
  • 0

#5 VitalyD

VitalyD

    Опытный участник

  • Members
  • PipPipPipPip
  • 285 сообщений
  • Город:Санкт-Петербург

Отправлено 11 марта 2012 - 13:36

http://www.zvon.org/...s/examples.html
  • 0

#6 appmen

appmen

    Опытный участник

  • Members
  • PipPipPipPip
  • 408 сообщений
  • ФИО:Victor

Отправлено 12 марта 2012 - 07:58

старайтесь не использовать полный Хпас, т.к. при отсутствии одного элемента в цепочке у вас "сломается" весь локатор. Чем меньше локатор, тем лучше.
  • 0

#7 Rara

Rara

    Активный участник

  • Members
  • PipPip
  • 83 сообщений
  • ФИО:Кондрашов Юрий Алексеевич
  • Город:Минск, Беларусь


Отправлено 12 марта 2012 - 08:06

Если знаете английский, то по XPath могу порекомендовать обучалку на сайте W3school. Минимум воды, максимум полезной информации. Раньше часто использовал её в качестве справочника.

Мы у себя в последнее время используем CSS selector вместо XPath. Во-первых, он быстрее (а это важно на "тяжёлых" страницах). Во-вторых, css selector часто более удобочитаемый, чем xpath.
Для быстрого формирования css-локаторов для элементов на странице могу порекомендовать Selector Gadget.

Краткая инструкция по использованию:
  • Заходите на http://www.selectorgadget.com/
  • Внизу статьи находите крупную ссылку "Selector Gadget"
  • Тащите мышью эту ссылку на панель закладок в браузере
  • После этого переходите на страницу сайта, для которого пишете скрипт
  • В панели закладок кликаете на ссылку, которую только что добавили
  • После загрузки gadget'а (появится оранжевая рамка, следующая за курсором) кликаете на элемент на странице, для которого вам нужен локатор. Он окрасится в жёлтый цвет. В гаджете появится строчка с css-локатором.
  • Далее, если нужно, чтобы локатор соответствовал ещё каким-то элементам, кликаем на них, локатор автоматически "расширяется", чтобы их захватывать
  • Если получившийся локатор захватывает лишние элементы страницы, их можно исключить кликнув мышкой.

Уже упомянутый выше Firepath для Firefox также отлично справляется с формированием css-локаторов.
  • 0
Я бы переписал жизнь, но Бог не дает мне исходники

#8 selevo

selevo

    Постоянный участник

  • Members
  • PipPipPip
  • 156 сообщений
  • ФИО:Сергей

Отправлено 12 марта 2012 - 08:43

о всем спасибо

css не используется на том форуме.
  • 0
Действительность,собой определяй.
(с)из лучших на свете книг "Звенящие кедры России"

#9 appmen

appmen

    Опытный участник

  • Members
  • PipPipPipPip
  • 408 сообщений
  • ФИО:Victor

Отправлено 12 марта 2012 - 08:55

а можно узнать что это за форум? Просто я ещё не сталкивался ни с одним сайтом, где бы не было стилей (простые странички за полноценные сайты не считаю :beee: )
  • 0

#10 Rara

Rara

    Активный участник

  • Members
  • PipPip
  • 83 сообщений
  • ФИО:Кондрашов Юрий Алексеевич
  • Город:Минск, Беларусь


Отправлено 12 марта 2012 - 09:55

css не используется на том форуме.

CSS Selector - это как язык, с помощью которого можно находить определённые элементы (или их группы) на странице. Он, в частности, используется в css-файлах для указания элементов на которые распространяется тот или иной стиль. Наличие или отсутствие файлов со стилями никак не влияет на возможность использования css-селекторов в тестовом скрипте.

Например, инициализация элемента (логотип на этом сайте) в скрипте с использованием xpath может выглядеть так:
WebElement logoImage = driver.findElement(By.xpath("//*[(@id = 'branding')]//img"));

а при использовании CSS selector'а будет выглядеть так:
WebElement logoImage = driver.findElement(By.cssSelector("#branding img"));

  • 0
Я бы переписал жизнь, но Бог не дает мне исходники

#11 selevo

selevo

    Постоянный участник

  • Members
  • PipPipPip
  • 156 сообщений
  • ФИО:Сергей

Отправлено 12 марта 2012 - 10:33

Rara
интересно

appmen
http://izhevsk.ru/forumtopics/117.html
  • 0
Действительность,собой определяй.
(с)из лучших на свете книг "Звенящие кедры России"

#12 appmen

appmen

    Опытный участник

  • Members
  • PipPipPipPip
  • 408 сообщений
  • ФИО:Victor

Отправлено 12 марта 2012 - 14:37

appmen
http://izhevsk.ru/forumtopics/117.html

да, действительно...
  • 0


Количество пользователей, читающих эту тему: 1

0 пользователей, 1 гостей, 0 анонимных