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

Непрерывная интеграция Python автотестов


(ex3me0) #1

Мало информации на просторах сети по-поводу CI автотестов на питоне (с вебдрайвером, или без оного)
Хотелось бы восполнить этот пробел.

Как же построить “с нуля” такую интеграцию?

Скачать Тимсити или Дженкинс не составляет труда, но вот конфигурация - куда сложнее. И одним чтением мануала - у меня не обошлось =\ Как у Вас устроена CI тестов на проектах? Поделитесь примером


(Sergey Korol) #2

Самый первый пост от python-специалиста. Посмотрите, какие плагины он использует и попробуйте с ними разобраться.


(ex3me0) #3

Все хорошо, кроме того, что Ant и Maven используются для билда Джавы, но не Питона


(Sergey Korol) #4

Т.е. вы считаете, что CI можно использовать только для одного языка? :wink: Или в приведенном списке вы не нашли ничего, связанного с python?


(Mykhailo Poliarush) #5

Ну у каждого свои проекты. Мне нужны эти сборщики, а вообще для питона они не нужны.


(Евгений Бухгаммер) #6

CI у нас реализуется за счет Buildbot. Проекты девелоперов собираются на Maven, как только в билдбот прилетает post запрос от gitlab о коммите. Слейв запускает мавен скрипты, собирая проект. По зеленому статусу сборки постхуком запускаются build-validation автотесты. Учитывая размеры нашей компании, мы прибегаем не к дорогим энтерпрайзным решениям, а опенсорсу. BVT автотесты под виндоус у нас автоматизированы за счет фреймворка pywinauto ( Python),Buildbot сам написан на Питоне. Найтли билды запускаются из билдбота по расписанию, опять же это все настраивается в главном конфиге билдбота. Ночью проходят уже тяжелые нагрузочные тесты и регрессионные тесты по GUI приложений.

Из красивостей CI и автотестирования: прикрученная генерация html отчетов при помощи Allure фреймворка от Яндекса.


(ex3me0) #7

Нашел то, что искал.
Поднял сервер Дженкинса на локалхосте, тесты гоняются, репорты пишутся через xmlrunner.
Правда без сборки окружения, т.к. все зависимости стоят, и у меня винда.
Далее планирую разобраться со сборкой окружения в virtualenv и прогоне тестов в нем, но уже на убунту-сервере (по примеру Travis-CI)