continuous integration

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

Upload: quartsoft

Post on 15-Nov-2014

650 views

Category:

Documents


1 download

DESCRIPTION

 

TRANSCRIPT

Page 1: Continuous integration

Continuous Integration с нуля

(Jenkins+Git+Selenium)

Page 2: Continuous integration

Немного теории:

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

Page 3: Continuous integration

Организация работы:

• Получаем свежий код из репозитория• Производим сборку проекта (например

«накатываем» миграции)• Выполняем тесты (unit+functional)• Выполняем дополнительные действия

(например анализ кода)• Собираем и отображаем отчёты• Рассылаем уведомления, заливаем билд на

live сервер, etc…

Page 4: Continuous integration
Page 5: Continuous integration

Плюсы:

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

«подкрутили» - другое «отвалилось»)• Всё это происходит автоматически(!)

Page 6: Continuous integration

Минусы:

• Необходим отдельный сервер• Затраты на поддержание инфраструктуры• Необходимо обучение людей• Затраты времени на написание\поддержку

тестов (и разработчиком, и тестировщиком)• Больше ничего не придумал…

Page 7: Continuous integration

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

Page 8: Continuous integration

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

Page 9: Continuous integration

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

Page 10: Continuous integration

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

Page 11: Continuous integration

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

Page 12: Continuous integration

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

Page 13: Continuous integration

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

Page 14: Continuous integration

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

Page 15: Continuous integration

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

Page 16: Continuous integration

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

Page 17: Continuous integration

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

Page 18: Continuous integration

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

Page 19: Continuous integration

А как же Selenium?