
Сохранение в лог.
#1
Отправлено 21 июля 2012 - 12:46
Возникла необходимость написать тест с некоторыми новыми для меня элементами. Но как это сделать, я увы не в курсе. Может поможете объяснением, или ссылкой, где показывается как реализовывать такие вещи.
1) Нужно провести регистрацию пользователя. Точнее допустим 100 попыток зарегистрироваться. Как это организовать в 1ом тесте?
2) что бы ошибки, при регистрации сохранялись в лог файл.
#2
Отправлено 22 июля 2012 - 10:27
#3
Отправлено 22 июля 2012 - 11:00
#4
Отправлено 23 июля 2012 - 20:35
.:уважаемые тестировщики.:.Может поможете объяснением:.
.:лично для меня довольно:.
Для neman:
"Участник онлайн-тренинга 'Все секреты и тайны Selenium 2.0'", судя по вашему фу-ответу, вы подписку давали о неразглашении и вообще теперь невыездной.
Selenium здесь очевидно при том, что на все ошибочные ситуации на клиентской стороне должно выводится соответствующее (варианты могут быть разные, и, Diaz говорит о необходимости обработки незнакомых ему событий в сценарии или элементов на html-странице) адекватное сообщение, текст которого можно и нужно получить средствами api webdriwer, сравнить с ожидаемым, и, если надо, сохранить в клиентский лог.
Selenium будет даже очень при чём, если для изысков логгирования захочется отэкстендить AbstractWebDriverEventListener.
А самое главное - коллегам надо помогать, а не вести себя, как последняя своvочь, в ответ на повторную просьбу о помощи.
Да и какой из вас помощник, если по-вашему, цитирую: "...Логирование же осуществляется ... фреймворком управления тестами (JUnit например)". Вы нас, пожалуйста, не пугайте, для этого служит, например, log4j.
Diaz, уважаемый коллега:
1) если некоторыми новыми для вас элементами (что вы почему-то не конкретизируете) являются диалоги предупреждений, например, alertMessage, тогда воспользуйтесь конструкцией driver.switchTo().alert().getText();
2) по поводу реализации многочисленных попыток регистрации: параметры ввода и ожидаемый результат можно оформить как отдельный ресурс (xml-, json- или property- файл, а может и сucumber-технология заинтересует) или простенько, прямо в скрипте автоматизации, как коллекцию соответствующих объектов, инициализированную значениями входных параметров и ожидаемых выходных;
3.1) по поводу логгирования: я вам посоветую зайти на http://selenium2test...iver-using.html и будьте внимательны, кроме log4j-steps там есть note;
3.2) не ограничивайтесь логом в скрипте автоматизации. Как насчёт того, чтобы сделать ещё и screenshot? или захочется к клиентскому логу добавить соответствующий фрагмент из серверного лога systemOut.log? с подробностями из серверного systemError.log и memory.log? а вдруг прошла sql-инъекция и этот факт тоже надо зафиксировать?
...
Diaz, закончу на плохой для вас новости: ваша система "дырявая", если позволяет 100-кратное количество подборов эккаунта.
#5
Отправлено 24 июля 2012 - 14:49
Если хочешь получить внятный и по существу ответ - нужен внятный и по существу вопрос.
Если например используется TestNg то достаточно использовать DataProvider и Reporter, если тесты выполняются через Selenium IDE - то это совсем другой случай.
#6
Отправлено 24 июля 2012 - 18:48
1)Я понимаю, что не у всех мозг наделён аналитическими способностями или имеется профессиональное чутьё, но данное обращение не заслуживает реакции:
1.1)
1.2)Вопрос лично для меня довольно загадочный.
Если хочешь получить внятный и по существу ответ - нужен внятный и по существу вопрос.
2)Более того, если вопрос кажется невнятным и не по существу...
Стоп, здесь другая история... neman, snark, не поняв вопрос, зачем давать неадекватный ответ:
2.1)
- это без комментариев;Логгирование же осуществляется ... фреймворком управления тестами JUnit
2.2)
- у вас спрашивали о средстве записи в лог-файл, а вы перечисляете фреймворки для формирования отчёта. Очевидно, вам не понятен не только вопрос, но и разница между логом и отчётом.Поддержу neman...Если например используется TestNg то достаточно использовать DataProvider и Reporter...
А как у вас ребята в жизни?
1)neman, когда к вам обращается коллега-новичёк с просьбой о помощи и неловко формулирует вопрос, вы посылаете его подальше?
2)а вы, snark, когда руководитель ставит вам задачу, то вы ему откровенно заявляете: "Если хочешь получить внятный и по существу результат - нужен внятный и по существу вопрос, (т.е. до мелочей расписанная спека)"?
Я таких специалистов гнал бы srаной метлой.
Diaz, извините, что я высказался не по существу вашего вопроса.
#7
Отправлено 24 июля 2012 - 19:54
Прошу отметить, что уважаемые коллеги пытаются угадать, что же имел в виду топикстартер, вследствие чего предлагают разнообразные варианты, которые лично мне из вопроса абсолютно не очевидны. Стиль же задавания вопросов в общественных форумах подразумевает, что задающий знает, чего он хочет, и уже попытался разобраться в данной области, на что некоторые участники обсуждения и указали.
К сути. Вопрос логирования можно обсуждать на разном уровне абстракций. Ничто не мешает писать информацию в файл средствами ввода-вывода ЯП, использовать библиотеки типа log4j/logback или более высокоуровневые механизмы типа slf4j. Фреймворк управления тестами предлагает свои варианты вывода (пресловутый ReportNG), который, если не ошибаюсь, использует java.util.logging. WebDriver тоже использует библиотеку логирования, commons.logging вроде бы.
Итого, у нас есть вагон механизмов, позволяющих получать информацию о различных событиях и управлять ее выводом посредством различных библиотек. Внимание, вопрос. Какую именно информацию хочет выводить Diaz?
PS: Когда ко мне обращается коллега-новичок, я в первую очередь формулирую за него правильный вопрос. На форуме я вынужден просить это сделать топикстартера. И я совершенно не представляю, как можно советовать человеку использовать log4j, если не сказано, о каком вообще языке идет речь.
#8
Отправлено 24 июля 2012 - 22:41
Может вы догадаетесь - кто, если я вас процитирую:Кто там что говорил о логировании во фреймворках?
Немножко неадекватно?Логирование же осуществляется ... фреймворком управления тестами JUnit например.
2)Также надо заметить, что о связке TestNg и Reporter говорили увы не вы, а snark...
Вас это не смущает?
3)И ещё заметим, что данная связка обычно используется для создания форматированного отчёта, но Diaz то спрашивал о файле лога, а не о файле-репорте("Умерьте пыл").
К сути. Вопрос логирования обсуждайте сколько хотите на разном уровне абстракций, а вопрос отношения к коллегам, я надеюсь, мы уже решили.
#9
Отправлено 25 июля 2012 - 03:57
Я имел в виду ваше неадекватное удивление возможностью писать лог с помощью фреймворка управления тестами.Может вы догадаетесь - кто, если я вас процитирую:
Немножко неадекватно?Логирование же осуществляется ... фреймворком управления тестами JUnit например.
Ничуть, учитывая их обратную совместимость. Junit тоже умеет писать логи.2)Также надо заметить, что о связке TestNg и Reporter говорили увы не вы, а snark...
Вас это не смущает?
Феерия. Форматированный отчет - это файл. В нем содержится информация в форматированном виде. Я сейчас чувствую разрушу ваши представления об окружающем мире, но в текстовых логах тоже содержится информация в форматированном виде, формат можно посмотреть, к примеру, в log4j.xml. И ничего не мешает написать мне аппендер к тому же log4j, который рисовал бы такие же красивенькие картинки с той же информацией.3)И ещё заметим, что данная связка обычно используется для создания форматированного отчёта, но Diaz то спрашивал о файле лога, а не о файле-репорте("Умерьте пыл").
Я уже заметил, что адекватному решению вопроса вы предпочли обсуждение коллег. Кстати, из ответа ясно, что вы откуда то знаете о исходном вопросе на порядок больше, чем там написано, в частности про алерты. В этом случае ваши дешевые понты про "отношение к коллегам" просто смешны. Зная всю информацию о вопросе, можно начинать корчить из себя доброго гуру.К сути. Вопрос логирования обсуждайте сколько хотите на разном уровне абстракций, а вопрос отношения к коллегам, я надеюсь, мы уже решили.
Если же советы даны без дополнительных данных, то это просто глупость и некомпетентность. Причины я указал выше. Если человек пишет в Selenium IDE или С#, очень ему поможет совет использовать log4j.
#10
Отправлено 03 августа 2012 - 19:37
neman:Если бы вы сосредоточились именно на сути вопроса, а не на нашем отношении к коллегам...
1)на чьём "нашем отношении"? вы же один такой герой выискался;
2)я и сосредоточился на вопросе (давно дал полезные рекомендации), который вы отплюнули как "довольно загадочный", а мою помощь оценили как "это просто глупость и некомпетентность", "дешевые понты", "корчить из себя доброго";
3)отправляясь в обсуждение моих комментариев, вы возвращаетесь всё-таким же, и с вами больше толочь воду в ступе не собираюсь.
#11
Отправлено 03 августа 2012 - 20:28
#12
Отправлено 04 августа 2012 - 06:58
#13
Отправлено 19 февраля 2013 - 14:31
У нас подключается логгер
protected static final Logger logger = Logger.getLogger("xxxLogger");В лог консоли сыпятся сообщения вида: первая строка - метод откуда был вызван лог, вторая строка - само сообщение:
Вопрос - возможно ли как-нить отключить вывод первой строчки-метода вызова?фев 19, 2013 6:00:47 PM ru.xxx.TestListener onTestStart
INFO: 1 >>>>>>>>>>START testInternalRegression
фев 19, 2013 6:01:04 PM ru.xxx.docs.DocsHelper clickButtonSomeDocument
INFO: Нажимаю на [Внутренний документ]
фев 19, 2013 6:05:04 PM ru.xxx.TestListener onTestSuccess
INFO: 1 <<<<<<<<<<FINISH testInternalRegression
фев 19, 2013 6:05:04 PM ru.xxx.TestListener onTestSuccess
INFO: Work Time: 0:04:16
фев 19, 2013 6:05:13 PM ru.xxx.TestBase afterClass
INFO:
=====FINISH INTERNAL:InternalRegressionTests
Количество пользователей, читающих эту тему: 1
0 пользователей, 1 гостей, 0 анонимных