Введение в непрерывную интеграцию Руденко Виктория Сообщество Тестировщиков Днепропетровска 26/05/2011 Ardas Group.

Презентация:



Advertisements
Похожие презентации
Непрерывная интеграция для PHP Александр Симанович.
Advertisements

Автоматизация тестирования в Microsoft Team System и костыли Павлов Игорь Apriorit Сообщество Тестировщиков Днепропетровска 29/09/2011.
Continuous Integration с нуля (Jenkins+Git+Selenium)
Эффективные методики автоматизированного тестирования в условиях непрерывной интеграции Сергей Андреев, JetBrains.
SQL 2012 И ГИБКИЕ МЕТОДЫ КОМАНДНОЙ РАЗРАБОТКИ C TFS Добро пожаловать в команду! Alexander Yakovlev
1 Тестирование в Agile Антон Поляков, 908 Сообщество тестировщиков Днепропетровска.
Знакомьтесь FitNess! Антон Куликов Active Systems.
Маркин Алексей Технический директор Битрикс-направления ADV / web-engineering co. Битрикс как промышленная интернет-платформа.
Автоматизация тестирования. План 1.Применение автоматизированного тестирования 2.Выбор инструментария 3.Процесс автоматизации (IBM Rational) GUI тестирование.
Разработка бизнес- приложений с использованием СПО Хомченко В.М. Новый подход к разработке бизнес-приложений на базе систем управления бизнес-процессами.
>1>1 Практика работы отдела тестирования ООО «КИР» Антон Куховаренко рук. отдела тестирования ООО «Корпоративные информационные рутины»
Тема 11 Медицинская помощь и лечение (схема 1). Тема 11 Медицинская помощь и лечение (схема 2)
Татьяна Сметанина. Автоматизированное тестирование веб-приложений Coded UI тесты и сценарии применения.
W AY 4 Quality Control in Continuous Integration Konstantin Zhukov.
Team System - фреймворк для автоматизации тестирования от Microsoft Футорняк Елена Apriorit Сообщество Тестировщиков Днепропетровска 29/09/2011.
НАЧАТЬ ТЕСТ по КИТ2 Разработчики: Оскерко В.С., доцент, к.э.н. Панько Н.Г., студентка ДФФ-1, 2-й курс 2011 г.
Процесс непрерывного улучшения в производстве ПО Оксана Щирба
Microsoft TechDays Прукс Александр
Информационные технологии в организации мониторинга государственных программ и проектов Аналитический центр при Правительстве Российской Федерации март.
ПроектированиеРазработкаВнедрение г. Самара ул. Льва Толстого
Транксрипт:

Введение в непрерывную интеграцию Руденко Виктория Сообщество Тестировщиков Днепропетровска 26/05/2011 Ardas Group

Руденко Виктория Опыт в тестировании – 4 года Должность – QA Lead Отдел QA – 8 человек тестирование контроль качества на всех этапах жизненного цикла ПО непрерывная интеграция - с 2009 г. Немного о себе Введение в непрерывную интеграцию 2 Ardas Group Программное обеспечение, сайты Независимое тестирование Web:

Непрерывная интеграция (англ. Continuous Integration) это практика разработки программного обеспечения, которая заключается в выполнении частых автоматизированных сборок проекта для скорейшего выявления и решения интеграционных проблем. [Википедия] Определение Введение в непрерывную интеграцию 3

Проблемы 4 проблема интеграции позднее обнаружение дефектов поддержка и запуск существующих тестов и проверок рутина актуальность тестируемой среды Введение в непрерывную интеграцию

«Continuous Integration» это лекарство от страха. Помогает при программировании. Dr. Zoidberg © Введение в непрерывную интеграцию 5 Решение

Этапы непрерывной интеграции 6 Введение в непрерывную интеграцию

Интеграционная сборка может осуществляться: по внешнему запросу по расписанию по факту обновления репозитория Обновление 7 Введение в непрерывную интеграцию Commit

Работа с репозиторием 8 все данные хранятся в репозитории частые коммиты локальная сборка перед коммитом предкоммитная сборка на интеграционном сервере (TeamCity) исправление поломанного кода – приоритетная задача прекращение работы с репозиторием до исправления сборки Введение в непрерывную интеграцию

автоматизированная быстрая: ресурсы компьютера разбиение на подмодули поэтапная критичные проверки сначала выделенная машина Сборка 9 Введение в непрерывную интеграцию

10 Это работает на моей машине!

Программисты пишут код для тестирования программного кода. QA: Все тесты включены в сборку быстрое обнаружение дефектов упрощение рефакторинга Модульное тестирование Введение в непрерывную интеграцию 11

проверка соблюдения стандартов проведение статического анализа измерение метрик Метрики: процент покрытия тестами мера сложности программ число строк кода Инспекция кода 12 Введение в непрерывную интеграцию

автоматизированное указание версии Развертывание Введение в непрерывную интеграцию 13

функциональные тесты (Selenium, TestComplete, Watir) тесты на нагрузку (JMeter, LoadRunner) QA запуск по расписанию реальные условия Приемочное тестирование Введение в непрерывную интеграцию 14

сохранение архивов указание версии и даты сборки QA экономия времени тестирование Архивирование Введение в непрерывную интеграцию 15

Генерация отчета 16 Введение в непрерывную интеграцию Активное оповещение: sms система мгновенных сообщений Пассивное оповещение: публикация на web файловый сервер

CruiseControl сервер интеграции для Java (бесплатный) Серверы непрерывной интеграции Введение в непрерывную интеграцию 17 CruiseControl.NET сервер интеграции для.NET (бесплатный) me+to+CruiseControl.NET CruiseControl сервер интеграции для Ruby (бесплатный)

Hudson open-source сервер интеграции, создан как альтернатива CruiseControl. Серверы непрерывной интеграции Введение в непрерывную интеграцию 18 TeamCity коммерческий сервер интеграции от компаниии JetBrains для java и.NET (есть бесплатная версия). Bamboo коммерческий сервер интеграции от компаниии Attlassian для java,.NET и Ruby.

web-приложения на Java инструменты сборки maven, ant unit тесты Selenium тесты сервер НИ CruiseControl Как это у нас Введение в непрерывную интеграцию 19

Сборка после каждого коммита (Быстрая) компиляция unit тесты сохранение архивов для QA – оповещение о новых архивах всем – в случае поломки или исправлении сборки Ночная сборка (Медленная) компиляция развертывание Selenium-тесты еmail с отчетом сохранение более подробного отчета на файловом сервере Как это у нас Введение в непрерывную интеграцию 20

CruiseControl Введение в непрерывную интеграцию 21

Рекомендации Введение в непрерывную интеграцию 22 1.Martin Fowler Continuous Integration ion.html ion.html 2.Paul M. Duvall Continuous Integration: Improving Software Quality and Reducing Risk Improving-Software-Reducing/dp/ Improving-Software-Reducing/dp/

Преимущества и недостатки НИ 23 Недостатки: выделенный сервер время на поддержку Введение в непрерывную интеграцию Преимущества: снижение рисков уменьшения количества дефектов быстрый сигнал о проблемах избавление от рутины наличие стабильной версии контроль состояния проекта

Вопросы Введение в непрерывную интеграцию 24