Как записать историю тестов с TestNg?

У меня есть набор тестов api на основе java, которые я запускаю из Intellij IDEA. Некоторые тесты обычно терпят неудачу по одной и той же причине при каждом запуске теста. Некоторые тесты терпят неудачу реже. Я хочу запустить все тесты хотя бы сто раз, чтобы выяснить, какие тесты не прошли и каковы уникальные причины неудач каждого неудачного теста.

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

failingTest: myTest, failureReason: Expected 200 but got 304, timesOccurred: 25/100, stackTrace: text.

failingTest: myTest, failureReason: 404 not found, timesOccurred: 5/100, stackTrace: text.

Итак, из вышесказанного мы видим, что myTest не удался в общей сложности 30/100 раз. Как проще всего создать такой отчет?

Спасибо.

Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
В компьютерном программировании биты играют важнейшую роль в представлении и манипулировании данными на двоичном уровне. Побитовые операции...
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Приходилось ли вам сталкиваться с требованиями, в которых вас могли попросить поднять тревогу или выдать ошибку, когда метод Java занимает больше...
Полный курс Java для разработчиков веб-сайтов и приложений
Полный курс Java для разработчиков веб-сайтов и приложений
Получите сертификат Java Web и Application Developer, используя наш курс.
0
0
452
1

Ответы 1

Самый простой способ сделать это - создать собственный репортер, реализовав org.testng.IReporter, который поддерживается базой данных, в которую вы добавляете результаты теста.

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

Могу я вместо этого использовать что-нибудь вроде Дженкинса? Я не уверен, что он предоставляет всю необходимую мне статистику без дополнительной работы.

MasterJoe 21.03.2020 00:37

Другие вопросы по теме