t.me/atinfo_chat Telegram группа по автоматизации тестирования

Как сформировать aggregated test report по результатам выполнения downstream jobs

Привет всем.
Возникла задача перенести проекты на дженкинс.
Тесты максимально стабильно работают когда разделены на небольшие части и выполняются независимо друг от друга.
Но в репортах заинтересованы разработчики и менеджер команды. Кучу репортов по каждому набору тестов они листать почему то не хотят :smile: поэтому есть нужда заставить дженкинс собирать результаты со всех зависимых (downstream - то есть джобы которые триггерятся пост-билд степом какого-то определенного проекта) и компановать в один которой должен публиковаться на странице результатов этого основного проекта.

В общем буду премного благодарен если подскажете как это возможно осуществить. желательно с минимумом заклинаний и заговоренного реквизита )

Спасибо

P.S. репорты в junit формате

Если просто, то в главном триггере, который запускается при каком-либо ивенте (пуш в гит, референс в геррит, что угодно) вы вызываете несколько джобов с помощью https://wiki.jenkins-ci.org/display/JENKINS/Parameterized+Trigger+Plugin , в котором стоит Block until the triggered projects finish their builds, в каждой из них Archive artifact нужной xml-ки junit-a. Затем передаете номера джобов в даунстрим сборщик, который берет артифакты из нужных номеров билдов тех джобов и в ней уже смердживаете результат (например этим https://ant.apache.org/manual/Tasks/junitreport.html или чем-угодно другим, гугл выдает много результатов). Не обязательно иметь отдельную джобу на сборщик, мне лично так удобнее просто, можно и в том же главном триггере вытаскивать потом артефакты.

Посмотрите на плагин от ZT.
По-моему, именно ваш случай. Работал он на ура.