Есть отличная удаленная работа для php+codeception+jenkins+allure+docker спецов. 100% remote! Присоединиться к проекту

Jenkins. Какие плагины Вы используете для прогона автоматических тестов?


(Mykhailo Poliarush) #1

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

Мой список плагинов такой:

  1. Ant Plugin - Ant поддержка
  2. ChuckNorris Plugin - чакнорис показывает свой вид, если что-то не так
  3. Dashboard View - для создания дашборда с графиками и дополнительными таблицами результатов
  4. Email Extension Plugin - более удобная отправка емейлов
  5. Extra Columns Plugin - возможность добавлять в таблицы дополнительные колонки
  6. Git Client Plugin и Git Plugin - для поддержки git
  7. Green Balls - озелененние удачных билдов, подефолту цвет синий
  8. HTML Publisher plugin - публикация и ссылка на сформированный HTML репорт
  9. inheritance-plugin - создание однотипных задач с возмжностью множественного изменения всех одновременно
  10. Jenkins Violations plugin - статистический анализатор кода и отображение результатов
  11. Violation Columns(List View Columns) - добавляет колонку в список по соответствующему плагину
  12. Maven Project Plugin - поддержка маven
  13. next-executions - добавляет панель с списком задач, которые скоро начнутся
  14. Progress Bar Column Plugin - показывает прогресс бар выполнения таблице билдов
  15. Python Plugin - запуск python скрипта в качестве шага
  16. Warnings Plug-in - анализатор кода и визуализация результатов
  17. xUnit plugin - запуск и подключение результатов с возможностью задать threshold для unstable и failed билдов

Ну и выглядит все это дело вот так вот:

А какие плагины вы используете и для чего?

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

Если надо расписать что делает какой-то плагин и как он настраивается, пишите. Буду отвечать отдельными комментариями.


Непрерывная интеграция Python автотестов
Запуск Selenium тестов на Python в Jenkins
(Руслан) #2
  1. Thucydides Jenkins Plugin - Фукидит репорты
  2. Xvfb plugin - Иксы) маст хев для запуска на Убунте( в остальных .unix не знаю)

этих двух с головой хватает)


(heartwilltell) #4

Совершенно не маст хев, а вещь которая порой рождает больше проблем чем решает.


(Sergey Korol) #5

Из неперечисленного:

  • Active Directory plugin - возможность авторизации с win domain креденшалами.
  • Config File Provider Plugin - возможность предустановки различных конфигов по типу settings.xml.
  • Parameterized Trigger Plugin - позволяет создавать параметризованные билды.
  • SSH Credentials Plugin - позволяет хранить SSH креденшалы.
  • Build Trigger Badge Plugin - монтирует к джобам иконки с тултипами об экзекьюторах (можно вставить во view).

(Dmytro Makhno) #6
  • Performance Plugin - отчеты производительности. генерим jtl формат, из бенчмарк тулы
  • Gatling Plugin - отчет производительности(бэнчмарк) заточенный под гатлинг
  • SauceLabs Plugin - чуток красоты, от кроссконфигурационных тестов
  • Plot Plugin - генерация специфических трендов, от билда к билду
  • Github Pull Request Builder Plugin - тестим пул реквесты
  • Build Failure Analyzer - собираем статистику причин падения интеграционных тестов
  • JUnit Attachments Plugin - атачим картинки или артефакты к тестам (никак не доберусь до Allure)
  • Amazon EC2 Plugin, Least load plugin - простое создание слейвов на амазоне, и их использование по требованию
  • Matrix Project Plugin - запуск тестов против разных окружений
  • SBT plugin - билд тул для Scala
  • Rebuilder Plugin - проще запускать джобу с теми же параметрами
  • Console Column Plugin - проще увидеть консоль
  • FlowDock Plugin - сброс инфы о некоторых билдах в флоудок

(Mykhailo Poliarush) #7

А можешь чуток описать, как используются эти плагины у вас и показать как они выглядят?


(Dmytro Makhno) #8

Plot Plugin

засовываем потребляемое цпу c конкретного процесса на образцовом тесте на зафиксированной конфигурации.
Пики откатывали, падения вниз радостно принимали (после анализа).

Failure Analyzer

When in job found known failures:

В самой джобе

Подсвеченный индикатор в логах

И для полной картинки индикатор который сработал

Индикаторы нужно настраивать, но настроив быстро можно понять: упал стэнд (значит вообще можно джобу не смотреть), есть падения по таймауту (возможно замедление работы системы), наиболее типичные ошибки (для нас - пора таки подрефакторить).
Т.е. позволяет типичные ошибки(текст), которые иногда нужно вылавливать глазами, делать индикаторами.


(Sergey Korol) #9

Для фанов продуктов Atlassian, в частности - HipChat, есть соответствующий плагин:
HipChat Plugin - шлет нотификейшены от джобов прямо в комнаты чата, позволяя тем самым быстро реагировать на события.


(Mykhailo Poliarush) #10

Я вот как раз хотел еще настроить skype для нотификации упавших тестов https://wiki.jenkins-ci.org/display/JENKINS/Instant+Messaging+Plugin и https://wiki.jenkins-ci.org/display/JENKINS/Skype+Plugin но как оказалось надо сделать немного больше чем установка. Потому еще не могу таким похвастаться.

А вообще нашел хороший проект для написания скайп бота на Python http://sevabot-skype-bot.readthedocs.org/en/latest/ но пока что руки еще до него не дошли. Хотя там есть уже рецептик для дженкинса https://github.com/opensourcehacker/sevabot/blob/master/docs/source/jenkins.rst


(HaraD) #11

@polusok Подскажите пожалуйста, какой из плагинов позволяет добавить переход к консоли (напротив каждой сборки справа)?


(Mykhailo Poliarush) #12

Extra Columns Plugin - возможность добавлять в таблицы дополнительные колонки
https://wiki.jenkins-ci.org/display/JENKINS/Extra+Columns+Plugin

Туда же можно добавить Progress Bar Column Plugin - показывает прогресс бар выполнения таблице билдов
https://wiki.jenkins-ci.org/display/JENKINS/Progress+Bar+Column+Plugin
Тоже оказался удобной штукой


(heartwilltell) #13

Возможно кто-то знает какой-то плагин для того что бы можно было быстро очистить историю и артефакты билда.
Или проще просто склонировать билд а старый удалить?


(Mykhailo Poliarush) #14

Насколько я помню, была такая фича Discard Old Builds https://wiki.jenkins-ci.org/display/JENKINS/Discard+Old+Build+plugin может быть она подойдет? Просто настраиваем опции, сохраняем, и потом проверяем чтобы все удалилось.


(Anatolike) #15

А не подскажите есть ли плагин что бы можно било добавлять описание для теста или как то помечать тест метками?
И интересует как-то можно скипать тесты на уровне jenkins и отображать в дженкинсе заскипаные тесты?


(Александр Таранков) #16

На уровне Jenkins делать это совершенно неправильно, так что вряд ли такой плагин есть

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


(Александр Беликов) #17

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


(Mykhailo Poliarush) #18

Таким не занимался, но вызов зависимой сборки можно реализовать через вызов REST API соответствующего CI.

https://wiki.jenkins-ci.org/display/JENKINS/Remote+access+API


(Елена Перфильева) #20

Подскажите, удалось?
У меня подобная ситуация.