Jenkins Allure report - как увидеть Trend ?


#1

Добрый день.

Прошу совета.

После отработки задачи pipeline, к конкретной сборке я вижу отчет Allure.
Однако раздел Trend пустой всегда.
По идее если один и тот же тестовый сценарий гонять несколько раз то Аллюр должен накапливать статистику и показывать его в разделе Trend.
Верно?

Как тогда нужно и что настроить, чтобы тренд был виден?


#2

У меня такое было при использовании VB и Allure 1. Поменял на VB2 и Allure 2 - заработало. Видимо VB не поддерживает новый формат Allure


#3

Проверить какой allure используется в Jenkins


#4

если вы используете книгу - то тогда проверьте

opm install add
opm install vanessa-runner
opm update -all

это приведет версии в последнее состояние

после этого проверьте jenkins plugin center - там должен быть последний alllure 2.27 https://wiki.jenkins.io/display/JENKINS/Allure+Plugin

там есть как раз фикс pipeline запуска


#5

“add” может ли работать в толстом клиенте обычного приложения?
Есть ли там ограничения по функционалу?

Сейчас я использую VB 1.1.094


#6

Да может. Ограничения в принципе те же. Нет возможности формировать “фичи из воздуха”


#7

Спасибо за ответ.
Переведу все хозяйство на add.
Может и с аллюром все заработает


#8

В итоге чуда не случилось.
add/bddRunner.epf в обычном приложении не запустился.
ругается на функцию СтрШаблон() - ее нет

Возможно, это потому, что у меня 8,3 в режиме совместимости с 8,1. ))))
Но этот факт я не могу изменить.


#9

В xUnitFor1C решил такую проблему заменив СтрШаблон на свою реализацию, разместив ее в плагине СтроковыеУтилиты, доработки находятся в ветке back_to_82.

Ничто не мешает здесь сделать то же самое, тем более все можно сделать поиском/заменой.


#10

а при выполнении opm update add мои поделки не перезатрутся ли?

Кстати есть ли в add возможность прикрутить свой плагин? Опять же, если я положу его в .../oscript/lib/add/plugins, то при обновлении этого пакета мой плагин не исчезнет ?


#11

а при выполнении opm update add мои поделки не перезатрутся ли?

Да, перезатрутся, конечно.
Если вы не добавите свои доработки как пулл-реквест в проект :slight_smile:

есть ли в add возможность прикрутить свой плагин? Опять же, если я положу его в …/oscript/lib/add/plugins, то при обновлении этого пакета мой плагин не исчезнет ?

Да, плагины можно положить в эту папку.

Насчет обновления пакета - пока что существующие файлы, которых нет в поставке add, не удаляются.
Но это является не очень верным поведением и будет исправлено (когда-нибудь :slight_smile: )
Есть ишуз на эту тему


#12

Может все-таки включить в поставку список файлов и по нему проверять?


#13

Я сделал спец.ишуз add для возможности указания доп.папок для своих плагинов аналогично библиотекам bdd.
Уверен, это более правильное решение


#14

Обновил всю инфраструктуру:
1С - 8.3.10.2466, УФ без режима совместимости
ADD - 5,4,0
Allure 2

В сборке Jenkins по ссылке HTML Report я все так же вижу в отчете Allure результат последнего прогона и все. Тренда нет.

Попробую по-рассуждать:
bddRunner складывает исходники для отчета в папку скажем ./Out/Allure
Затем в шаге “Публикация результатов” в сборочной линии командой

${allurePath}/bin/allure generate Out/Allure -o Reports/Allure-report

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

Выходит, что для получения тренда в отчете в исходниках должны быть результаты нескольких прогонов.

Но в настройках сборочной линии в Jenkins поставлена настройка “Clean before checkout”, то есть рабочий каталог на slave ноде для этой сборочной линии всегда очищается. То есть очищается и каталогв ./Out/Allure в том числе.

Из этого я вижу два пути:

  1. Убрать настройку “Clean before checkout” в настройках сборочной линии.
    В этом случае каталог с исходниками для Аллюр будет накапливать данные разных запусков.
    Однако в курсе по инженерным практикам эта настройка считается хорошим тоном и не понятно чем грозит мне отключение такой настройки.

  2. Вынести каталог с исходниами для Аллюр за пределы slave-ноды.
    В этом случае в этот каталог можно закидывать также результаты TDD тестов из другой pipeline, сделанной для прогона дымовых тестов.
    Но в таком случае мне придется указать абсолютный путь к исходникам в Jenkinsfile для генерации отчета.

Прошу совета, коллеги.
Верно ли я мыслю?
Есть ли у вас решение подобной проблемы?


#15

Откажитесь от html report в сторону штатного шага allure. Он уже год как работает без ошибок.


#16

поподробнее можно? что значит “штатного”?
Есть пример?
И что делать с каталогами? держать их за пределами репозитория: и исходники и сам отчет?


#17

у плагина аллюра для дженкинса есть свой шаг allure, который можно юзать в пайплайне, в т.ч. в декларативном синтаксисе


#18

Типа такого:

                // Генерация отчета Allure
                script {
                    allure([
                            commandline: 'allure',
                            includeProperties: false,
                            jdk: '',
                            properties: [],
                            reportBuildPolicy: 'ALWAYS',
                            results: [[path: 'out/allure']]
                    ])
                }

#19

Тренд увидел в Аллюре.
Хотя и не понимаю как это работает.
bdd всегда очищает папку с исходниками для Аллюра и пишет только результаты текущего запуска
сборочная линия очищает папку проекта
где накапливается статистика для тренда - загадка.
Причем между сборками также можно ходить и видеть отчет для конкретной сборки.
Магия )))

С каталогами за пределами каталога проекта тоже не взлетело. Ну хотя бы попробовал.


#20

Результаты Аллюра кешируются на мастер-ноде - магии там никакой нет. Фактически при каждом построении он их переносит из Workspace (рабочего каталога сборки, в каталог для хранения) - то есть можно запустить проект, вообще на другой ноде, а тренд сохранится