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

Фотография

Логирование в TestNG


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

#1 Azur

Azur

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

  • Members
  • Pip
  • 54 сообщений
  • ФИО:Александр Згнетов
  • Город:Омск

Отправлено 18 июля 2013 - 14:13

Добрый день. Использую Webdriver, Java, TestNG. Прикручиваю логирование, пока разбираюсь с log4j и столкнулся с несколькими проблемами.

Во-первых, не могу прикрутить логирование для успешных или неуспешных Assert проверок. Где-то советуют переписывать метод, но я не настолько силен в жаве. Может у кого-то есть рабочие примеры или другие варианты?

Во-вторых, log4j записывает за драйвером действия через AbstractWebDriverEventListener и из-за этого в логе везде фигурирует класс, в котором данный Listener описан. А хочется видеть в логе классы, методы и номера строк самих тестов. Я конечно понимаю, что это есть в логе TestNG, но 2 лога это не комильфо, нужен 1 и подробный.

В третьих, есть методы ожидания элементов, где в цикле фигурирует Exception. Логи и скриншоты в этом случае будут отрабатываться каждый шаг цикла, если много итераций, то получится много мусора. Как лучше это обойти чтобы не поломать функциональность?
  • 0

#2 neman

neman

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

  • Members
  • PipPip
  • 142 сообщений
  • ФИО:Антон


Отправлено 19 июля 2013 - 09:15

Во-вторых, log4j записывает за драйвером действия через AbstractWebDriverEventListener и из-за этого в логе везде фигурирует класс, в котором данный Listener описан. А хочется видеть в логе классы, методы и номера строк самих тестов. Я конечно понимаю, что это есть в логе TestNG, но 2 лога это не комильфо, нужен 1 и подробный.

1)Слить все логирование в один файл (c помощью slf4j например)
2)А как мы узнаем в методах драйвера, откуда они были вызваны? Нет, можно конечно пронаследоваться от AbstractWebDriverEventListener, через getClassContext() получить иерархию вызовов, найти там тестовый метод и запихать в лог, но это не для слабых духом. Не знаю как это по-нормальному можно сделать.

В третьих, есть методы ожидания элементов, где в цикле фигурирует Exception. Логи и скриншоты в этом случае будут отрабатываться каждый шаг цикла, если много итераций, то получится много мусора. Как лучше это обойти чтобы не поломать функциональность?

А с чего это вообще отрабатывают? Скриншоты должны сниматься в момент падения теста (когда тест помечается как Failed). В противном случае это баг в том механизме-скриншотере, который вы используете.
  • 0


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

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