реально запарился с xpath
#1
Отправлено 10 марта 2012 - 20:01
вот такой путь выдал: 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>
ну и как теперь жить ?
Как искать пути,у меня уже крыша едет от этих скобок и закорючек,что делать !?
(с)из лучших на свете книг "Звенящие кедры России"
#2
Отправлено 11 марта 2012 - 08:29
Если читали документацию по xpath на MSDN, все закорючки должны быть знакомые.
#3
Отправлено 11 марта 2012 - 09:08
мозг устал после трёх предложений :)
ну да это одно и тоже.
Очень неудобно что selenium IDE при клике правой кнопкой мышки по ссылке не предлагает вариант с xpach
(с)из лучших на свете книг "Звенящие кедры России"
#4
Отправлено 11 марта 2012 - 12:38
И еще очень полезная информация здесь: http://www.simple-ta...-rosetta-stone/
#6
Отправлено 12 марта 2012 - 07:58
#7
Отправлено 12 марта 2012 - 08:06
Мы у себя в последнее время используем CSS selector вместо XPath. Во-первых, он быстрее (а это важно на "тяжёлых" страницах). Во-вторых, css selector часто более удобочитаемый, чем xpath.
Для быстрого формирования css-локаторов для элементов на странице могу порекомендовать Selector Gadget.
Краткая инструкция по использованию:
- Заходите на http://www.selectorgadget.com/
- Внизу статьи находите крупную ссылку "Selector Gadget"
- Тащите мышью эту ссылку на панель закладок в браузере
- После этого переходите на страницу сайта, для которого пишете скрипт
- В панели закладок кликаете на ссылку, которую только что добавили
- После загрузки gadget'а (появится оранжевая рамка, следующая за курсором) кликаете на элемент на странице, для которого вам нужен локатор. Он окрасится в жёлтый цвет. В гаджете появится строчка с css-локатором.
- Далее, если нужно, чтобы локатор соответствовал ещё каким-то элементам, кликаем на них, локатор автоматически "расширяется", чтобы их захватывать
- Если получившийся локатор захватывает лишние элементы страницы, их можно исключить кликнув мышкой.
Уже упомянутый выше Firepath для Firefox также отлично справляется с формированием css-локаторов.
#8
Отправлено 12 марта 2012 - 08:43
css не используется на том форуме.
(с)из лучших на свете книг "Звенящие кедры России"
#9
Отправлено 12 марта 2012 - 08:55
#10
Отправлено 12 марта 2012 - 09:55
CSS Selector - это как язык, с помощью которого можно находить определённые элементы (или их группы) на странице. Он, в частности, используется в css-файлах для указания элементов на которые распространяется тот или иной стиль. Наличие или отсутствие файлов со стилями никак не влияет на возможность использования css-селекторов в тестовом скрипте.css не используется на том форуме.
Например, инициализация элемента (логотип на этом сайте) в скрипте с использованием xpath может выглядеть так:
WebElement logoImage = driver.findElement(By.xpath("//*[(@id = 'branding')]//img"));а при использовании CSS selector'а будет выглядеть так:
WebElement logoImage = driver.findElement(By.cssSelector("#branding img"));
#11
Отправлено 12 марта 2012 - 10:33
(с)из лучших на свете книг "Звенящие кедры России"
Количество пользователей, читающих эту тему: 1
0 пользователей, 1 гостей, 0 анонимных


