ADD умеет повторять тесты?


#1

Нестабильные тесты, где выполнение зависит от всяких флуктуаций тестовой среды, имеют право на жизнь? Вот такая функциональность поддерживается?


#2

Я давно думаю над повторным запуском упавших тестов.
Фишка очень полезная.

В огурце есть опция --rerun

Но пока руки не дошли :frowning:


#3

Через плагин же.


#4

Который еще нужно написать? :slight_smile:

или уже есть?


#5

да в отчете аллюра такое работает есть даже недокументированная фишка когда в разніх фичах одинаковое название шага и в одном сценарии данній шаг падает а вдругом нет и в результате сборка “падает” т.к. есть 1 ошибка , а откріваешь отчет аллюр - там все зеленое и потом ищещь пологам по слову failed на каком сценарии сломалось и какой имкнно шаг

чтоб найчитса повторять тесті нало немало сделать, это распарсить лог ошибок и нучится передавать параметрі с названием определенного списка фич для запуска, но exportscenario и интегральніе сценарии могуть стать на заваді


#6

Расшифруй. Непонятно

ИМХО нужно парсить не лог ошибок, а отчет junit или allure.

Это проще и структура файлов точно фиксирована


#7

А точно нужно парсить лог?
Может добавить тестам свойство, типа “КоличествоПовторов”, и заданное количество повторять если с первого раза тест не прошёл?
А разработчик теста уже сам решит, нужно тест повторять или нет.


#8

Ага, мы начали говорить о разных кейсах.
Мы с Женей говорим о повторном прогоне упавших тестов.
А ты о повторном прогоне любых тестов :slight_smile:


#9

Вообще это зло. Нестабильный тест.
Представь кейс - один раз тест прошел, другой не прошел.

Что считать результатом - успешный или неуспешный вариант? :slight_smile:

Как управлять количеством запусков?

  • для фич?
  • для тестов кодом?

#10

Повторные запуски делаем только если в предыдущий раз свалились.
Если один раз тест пройден - успех.

Например, добавить необязательный параметр КоличествоПовторов в https://github.com/silverbulleters/add/blob/2718e047b93501f5c7104d76aae4b83e21d721cf/doc/xdd/Создание-файлов-тестов.MD#api-набортестов

Тест перезапускаем только если предыдущие запуски были не успешными, и не более указанного количества повторов.