Continuous Integration с нуля


The Presentation inside:

Slide 0

Continuous Integration с нуля (Jenkins+Git+Selenium)


Slide 1

Немного теории: Continuous Integration (CI) - одна из фундаментальных инженерных практик в Agile разработке. Выполняет роль системы раннего обнаружения ошибок путём автоматического выполнения задач компиляции, запуска юнит тестов, сборки проекта, запуска интеграционных тестов и многого другого…


Slide 2

Организация работы: Получаем свежий код из репозитория Производим сборку проекта (например «накатываем» миграции) Выполняем тесты (unit+functional) Выполняем дополнительные действия (например анализ кода) Собираем и отображаем отчёты Рассылаем уведомления, заливаем билд на live сервер, etc…


Slide 3


Slide 4

Плюсы: Много различных инструментов Тестируется всегда «свежий» билд Актуальные сведения о состоянии системы Подробные отчёты (что упало, кто виноват) Регрессионное тестирование (одно «подкрутили» - другое «отвалилось») Всё это происходит автоматически(!)


Slide 5

Минусы: Необходим отдельный сервер Затраты на поддержание инфраструктуры Необходимо обучение людей Затраты времени на написание\поддержку тестов (и разработчиком, и тестировщиком) Больше ничего не придумал…


Slide 6

Инструменты:


Slide 7

Создание проекта (шаг 1)


Slide 8

Создание проекта (шаг 2)


Slide 9

Создание проекта (шаг 3)


Slide 10

Создание проекта (шаг 4)


Slide 11

Создание проекта (шаг 5)


Slide 12

Запускаем билд:


Slide 13

Анализируем результат (вывод из консоли):


Slide 14

Анализируем результат (общая информация):


Slide 15

Анализируем результат (Test Results):


Slide 16

Анализируем результат (Test Results):


Slide 17

Анализируем результат (Duplicate Code):


Slide 18

А как же Selenium?


Slide 19

Материалы: Phing http://www.phing.info/docs/guide/stable/ PHPUnit http://www.phpunit.de/manual/3.6/en/appendixes.configuration.html Jenkins http://wiki.jenkins-ci.org/display/ JENKINS/Home


×

HTML:





Ссылка: