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

Фотография

Selenium для начинающих


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

#241 sysanin

sysanin

    Новый участник

  • Members
  • Pip
  • 36 сообщений

Отправлено 26 февраля 2014 - 15:37

to barancev , спасибо большое за на водку), буду штудировать дальше!)

 

to Dalay_LAMO , так я наоборот за, что такие курсы есть, раньше вообще такого не было и надо было читать и работать только с документацие, если она была) Пасиб, буду пробовать.


  • 0

#242 astenix

astenix

    Специалист

  • Members
  • PipPipPipPipPip
  • 906 сообщений
  • ФИО:Лёша Лупан
  • Город:Кишинев


Отправлено 26 февраля 2014 - 15:37


Официальный список команд -- http://release.selen.../reference.html

 

И все эти описания выводятся непосредственно в Selenium IDE при выборе каждой команды по-отдельности.

 

Следует учесть ещё мелкие апдейты документации. В "Selenium IDE 2.5.0" при выводе справки команды keyPress выводится сообщение "This command is deprecated. Use the sendKeys command instead". А в документе reference.html предупреждения про 'deprecated' есть только у двух команд.


  • 0

Software Testing Glossary - простыми словами о непростых словах.


#243 sysanin

sysanin

    Новый участник

  • Members
  • Pip
  • 36 сообщений

Отправлено 26 февраля 2014 - 16:19


Либо переходить на более современные и мощные инструменты

 

Подскажите на какие? Коротко о задаче: есть сайт подработок, надо создать полноценный сценарий, где юзеры будут создаваться, логиниться, создавать объявления, общаться друг с другом в личной переписке, удалять свои объявления, делать выборку по уже существующим объявлениям и это все будет нагрузочным скриптом. Проверить надо устойчивость сайта временно максимальную(хаброэфект как его еще называют)) ) и длительную равномерную в течении 1-2 недель и смотреть как будет при этом нагружен сервер и смотреть на скорость загрузки страниц на сайте. 

 

Заказчик решил, что будет:

 

 

Значит, нам в итоге нужно:

25 000 пользователей
50 000 объявлений
0.9 активностей в секунду. Для учета тестирования на пиковые нагрузки (которые на нашем сайте более менее равномерны)  можем увеличить в 3 раза, получим 3 активности в секунду.

  • 0

#244 astenix

astenix

    Специалист

  • Members
  • PipPipPipPipPip
  • 906 сообщений
  • ФИО:Лёша Лупан
  • Город:Кишинев


Отправлено 26 февраля 2014 - 16:23

 


Либо переходить на более современные и мощные инструменты

 

Подскажите на какие? Коротко о задаче: есть сайт подработок, надо создать полноценный сценарий, где юзеры будут создаваться, логиниться, создавать объявления, общаться друг с другом в личной переписке, удалять свои объявления, делать выборку по уже существующим объявлениям и это все будет нагрузочным скриптом. Проверить надо устойчивость сайта временно максимальную(хаброэфект как его еще называют)) ) и длительную равномерную в течении 1-2 недель и смотреть как будет при этом нагружен сервер и смотреть на скорость загрузки страниц на сайте. 

 

Заказчик решил, что будет:

 

 

Значит, нам в итоге нужно:

25 000 пользователей
50 000 объявлений
0.9 активностей в секунду. Для учета тестирования на пиковые нагрузки (которые на нашем сайте более менее равномерны)  можем увеличить в 3 раза, получим 3 активности в секунду.

 

JMeter


  • 0

Software Testing Glossary - простыми словами о непростых словах.


#245 BadMF

BadMF

    Специалист

  • Members
  • PipPipPipPipPip
  • 809 сообщений
  • ФИО:Dmitry Petrov

Отправлено 26 февраля 2014 - 18:18

я так понимаю у вас две задачи:

1) автоматизация функционального тестирования

2) нагрузочное тестирование

 

для первого используйте webdriver (это тот же селениум, только гораздо круче)

для второго JMeter или Лоад Ранер или еще чего нагрузочное

 

Силениум ИДЕ даже когда он был современным, был не самой лучшей поделкой, с него можно было начинать знакомство с автоматизацией ГУИ тестирования, но как полноценный инструмент я бы его не советовал использовать даже тогда.


  • 0

#246 vuchenka

vuchenka

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

  • Members
  • PipPipPip
  • 174 сообщений
  • ФИО:Ирина
  • Город:Минск

Отправлено 28 февраля 2014 - 12:29

Спасибо всем, разобралась как мне вызвать всплывающие кнопки..

Сегодня научилась перемещать файлы в дереве, пол дня мучалась, но в итоге разобралась и работает..

Радости нет предела))

 

Но вот не могу разобраться вообще в таком вопросе:

как записать локатор поля?

 

есть поле для ввода даты и времени, значения в него можно вводить вручную или  при помощи календаря

не стала заворачиваться вызовом календаря.

решила просто в ручную в него данные вводить..

так вот, при каждом обновлении страницы значения css и XPath разные, значения id и name  нет.

как можно обратиться к таким полям?

 

пример локаторов для полей:

css=#dp1393590037980

XPath=//*[@id='dp1393590116091']


  • 0

"Не сломал - значит, не старался!"


#247 vmaximv

vmaximv

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

  • Members
  • PipPipPipPip
  • 350 сообщений

Отправлено 28 февраля 2014 - 12:45

Что бы обращаться к таким полям необходимо прокачать скилл по  Xpath/Css хотя бы до pre-intermediate.


  • 0

#248 BadMF

BadMF

    Специалист

  • Members
  • PipPipPipPipPip
  • 809 сообщений
  • ФИО:Dmitry Petrov

Отправлено 28 февраля 2014 - 13:07

Что бы обращаться к таким полям необходимо прокачать скилл по  Xpath/Css хотя бы до pre-intermediate.

ну и использовать суровую уличную магию =)

если в компоненте календаря уверены то и жмакать по нему не надо, пишите скриптом прямо в поле дата нужное вам значение (если оно конечно не закрытое от ручного ввода)

ну а если календарь тоже надо тестировать, то тут уж вам никуда не деться. 


  • 0

#249 vuchenka

vuchenka

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

  • Members
  • PipPipPip
  • 174 сообщений
  • ФИО:Ирина
  • Город:Минск

Отправлено 28 февраля 2014 - 13:20

 

Что бы обращаться к таким полям необходимо прокачать скилл по  Xpath/Css хотя бы до pre-intermediate.

ну и использовать суровую уличную магию =)

если в компоненте календаря уверены то и жмакать по нему не надо, пишите скриптом прямо в поле дата нужное вам значение (если оно конечно не закрытое от ручного ввода)

ну а если календарь тоже надо тестировать, то тут уж вам никуда не деться. 

 

я решила что буду писать скрипт на ручной ввод, но что делать с тес что значения локаторов постоянно разное?!)


  • 0

"Не сломал - значит, не старался!"


#250 vuchenka

vuchenka

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

  • Members
  • PipPipPip
  • 174 сообщений
  • ФИО:Ирина
  • Город:Минск

Отправлено 28 февраля 2014 - 13:20

Что бы обращаться к таким полям необходимо прокачать скилл по  Xpath/Css хотя бы до pre-intermediate.

буду прокачивать)


  • 0

"Не сломал - значит, не старался!"


#251 sysanin

sysanin

    Новый участник

  • Members
  • Pip
  • 36 сообщений

Отправлено 03 марта 2014 - 10:22

Вот тут кратенько, если не понятно, можно в лс или скайп, помогу чем смогу)

 

 

Вид xpath есть вот в таком:

 

xpath=//*[@id="id275"],

 

но тут большая вероятность того. что ID будет меняться с каждой перезагрузкой страницы,

 

Вот в таком виде работает, при условия того, что верстка страницы не будет смещаться (как пример у меня длинный имейл переносился на след строку и естественно смещался Xpath):

 

xpath=//html/body/div[3]/div[5]/div/div[2]/div/div/div[2]/div/div/span/div/div[3]

 

При этом в selenium ide НЕ ЗАБЫВАЙТЕ!!!! ставить 2 черточки //, так как копирование в странице xpath может быть с одной черточкой:

 

/html/body/div[3]/div[5]/div/div[2]/div/div/div[2]/div/div/span/div/div[3]


  • 1

#252 vmaximv

vmaximv

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

  • Members
  • PipPipPipPip
  • 350 сообщений

Отправлено 03 марта 2014 - 11:53

 

xpath=//html/body/div[3]/div[5]/div/div[2]/div/div/div[2]/div/div/span/div/div[3]

 

За такое "банить" надо в автоматизации годика так на пол - для обучения.

А индусов вообще на ютьюб, с их "обучающими" роликами, вообще пускать нельзя. Т.к. последнее время становится все труднее отличать - либо перед тобой начинающий соотечественник, либо "матерый" индус.


  • 0

#253 astenix

astenix

    Специалист

  • Members
  • PipPipPipPipPip
  • 906 сообщений
  • ФИО:Лёша Лупан
  • Город:Кишинев


Отправлено 03 марта 2014 - 12:42

Зачем так сурово? :) sysanin сам всё поймёт, когда придёт его черёд понимать xpath.

 


  • 0

Software Testing Glossary - простыми словами о непростых словах.


#254 sysanin

sysanin

    Новый участник

  • Members
  • Pip
  • 36 сообщений

Отправлено 03 марта 2014 - 13:06

Зачем так сурово? :) sysanin сам всё поймёт, когда придёт его черёд понимать xpath.

а в чем проблема написать "как надо"? я так понял тут так не принято 


  • 0

#255 astenix

astenix

    Специалист

  • Members
  • PipPipPipPipPip
  • 906 сообщений
  • ФИО:Лёша Лупан
  • Город:Кишинев


Отправлено 03 марта 2014 - 13:31


Зачем так сурово? :) sysanin сам всё поймёт, когда придёт его черёд понимать xpath.

а в чем проблема написать "как надо"? я так понял тут так не принято 

"Длинный" путь к элементу хорош только в том случае, если искомый элемент ВСЕГДА будет пребывать на странице в одном и том же месте. Современные страницы весьма динамично изменяют и содержимое кода, и расположение элементов может "произвольно" измениться. Используя длинный xpath вы ЗДЕСЬ И СЕЙЧАС решаете проблему, но очень рискуете в будущем получить неработающие тесты, и завязнуть не в тестировании приложения, а в разбирательствах "Почему тест не работает, ведь должен работать!"

 

Второе: усложнённая читаемость "длинных" локаторов. //html/body/div[3]/div[5]/div/div[2]/div/div/div[2]/div/div/span/div/div[3] - какой именно элемент находится в конце этой эволюционной цепочки? Какой-то "третий по счету" слой... Сегодня оно вам понятно, бо вы в контексте находитесь. Через два месяца вы будете читать свой код с вопросом "Какой мудак это всё написал?", а подпись автора будет вашей — вам будет неприятно.

 

Третье: xpath потому и создали таким сложным и многоуровневым, что жесткие привязки к элементам на странице оказались тупиковой ветвью. Рекомендуется ориентироваться на близлежащие к нужному вам элементу сущности, и указывать адрес в зависимости от соседних. Оно, конечно, чуть морочнее, но это только поначалу. Со временем навык принесёт скорость ориентирования и записи читаемого и грамотного xpath. Вот я и предлагаю вам это "время" как-то приблизить.

 

http://www.zvon.org/...l/examples.html - слева вверху есть ссылка "По-русски". Попробуйте освоить всё это дело последовательно, бо последние примеры сходу вряд ли можно осознать.


  • 0

Software Testing Glossary - простыми словами о непростых словах.


#256 sysanin

sysanin

    Новый участник

  • Members
  • Pip
  • 36 сообщений

Отправлено 03 марта 2014 - 15:30

короткий путь в виде: xpath=//*[@id="id275"] не работает так как викет при перезагрузке страницы каждый раз выдает новый ID для элемента. При это например у кнопки есть только вот так:

 

<a id="id9" class="button" href="./workorderlist;jsessionid=D8F8B7C2C3555ED0357FDD72357FC99F.tomcat-jobPortal?Tjck/LPf2PmDJ8MMFlgXbmZEUC2ei6Mn2kkAOpyuC38%3D">Добавить подработку</a>

если копируешь xpath, то получаем так: //*[@id="id9"], при этом id при перезагрузке все время меняется. 


  • 0

#257 sysanin

sysanin

    Новый участник

  • Members
  • Pip
  • 36 сообщений

Отправлено 03 марта 2014 - 15:31

http://www.zvon.org/...l/examples.html - слева вверху есть ссылка "По-русски". Попробуйте освоить всё это дело последовательно, бо последние примеры сходу вряд ли можно осознать.


пшел учить мат часть
  • 0

#258 astenix

astenix

    Специалист

  • Members
  • PipPipPipPipPip
  • 906 сообщений
  • ФИО:Лёша Лупан
  • Город:Кишинев


Отправлено 03 марта 2014 - 15:49

короткий путь в виде: xpath=//*[@id="id275"] не работает так как викет при перезагрузке страницы каждый раз выдает новый ID для элемента. При это например у кнопки есть только вот так:

 

<a id="id9" class="button" href="./workorderlist;jsessionid=D8F8B7C2C3555ED0357FDD72357FC99F.tomcat-jobPortal?Tjck/LPf2PmDJ8MMFlgXbmZEUC2ei6Mn2kkAOpyuC38%3D">Добавить подработку</a>

если копируешь xpath, то получаем так: //*[@id="id9"], при этом id при перезагрузке все время меняется. 

 

Следовательно, конкретно в этом случае не надо привязываться к id.

 

Вы можете идентифицировать элемент различными способами. Иногда и через свойства css.

 

//a[contains(text(),'Добавить подработку')] - это сработает, если на странице только одна ссылка, которая содержит слова "Добавить подработку". Если такая ссылка на странице не одна — продумывайте более объемные варианты xpath, в зависимости от близлежащих элементов. Пример подобного решения: http://siderulezzz.w.../2011/03/17/12/


  • 0

Software Testing Glossary - простыми словами о непростых словах.


#259 vuchenka

vuchenka

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

  • Members
  • PipPipPip
  • 174 сообщений
  • ФИО:Ирина
  • Город:Минск

Отправлено 04 марта 2014 - 06:42

Вот тут кратенько, если не понятно, можно в лс или скайп, помогу чем смогу)

 

 

Вид xpath есть вот в таком:

 

xpath=//*[@id="id275"],

 

но тут большая вероятность того. что ID будет меняться с каждой перезагрузкой страницы,

 

Вот в таком виде работает, при условия того, что верстка страницы не будет смещаться (как пример у меня длинный имейл переносился на след строку и естественно смещался Xpath):

 

xpath=//html/body/div[3]/div[5]/div/div[2]/div/div/div[2]/div/div/span/div/div[3]

 

При этом в selenium ide НЕ ЗАБЫВАЙТЕ!!!! ставить 2 черточки //, так как копирование в странице xpath может быть с одной черточкой:

 

/html/body/div[3]/div[5]/div/div[2]/div/div/div[2]/div/div/span/div/div[3]

а можете видео еще раз подлить, не открывается(


  • 0

"Не сломал - значит, не старался!"


#260 Dalay_LAMO

Dalay_LAMO

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

  • Members
  • PipPipPipPip
  • 265 сообщений
  • ФИО:Дмитрий
  • Город:Санкт-Петербург


Отправлено 04 марта 2014 - 08:35

 

а можете видео еще раз подлить, не открывается(

 

 

Не надо смотреть то видео, ничему хорошему оно не научит - почитайте дискуссию выше и никогда не пользуйтесь абсолютными xpath-путями.

Можно зайти сюда - http://automated-tes...izucheniyu/3782 , там есть ссылки на всякие полезные ресурсы по теме.


  • 1


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

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