От Зефира в коробке к Structure Zephyr или как тест-менеджеру перекроить внут...
Непрерывная интеграция и автотесты. Сравнительный анализ инструментов
1. Непрерывная интеграция и автотесты.
Сравнительный анализ инструментов.
Вадим Зубович
ISSoft / Coherent Solutions
2. О себе
Вадим Зубович
Automation Tech Lead
ISsoft / Coherent Solutions
www.coherentsolutions.com
www.comaqa.by
www.dpi.solutions
3. Continuous integration
Непрерывная интеграция – практика в разработке
программного обеспечения, подразумевающая регулярную
интеграцию кода в общий репозиторий, с последующей
верификацией с помощью автоматической сборки.
4. Цели для разработчиков
• Минимизация времени и трудозатрат на интеграцию кода
• Возможность в любой момент собрать работоспособный продукт,
готовый к релизу
• Упрощение локализации ошибок на самых ранних стадиях
разработки
5. CI для разработчиков
• Регулярное добавление нового кода в общий репозиторий
• Проверка общего проекта на «собираемость»
• Запуск юнит-тестов
• Уведомление об ошибке сборки или об упавших юнит-тестах
• Необходимость оставаться на работе после чекина, пока не пройдет
билд
7. CI для автоматизатора
• Регулярное добавление нового кода в общий репозиторий
• Проверка общего проекта на «собираемость»
• Запуск юнит-тестов
• Уведомление об ошибке сборки
• Запуск функциональных автотестов
• Генерация и сохранение отчетов с уведомлением о завершении
тестирования
или об упавших юнит-тестах
17. Уведомления
Инструмент Возможные типы уведомлений
XMPP, Google Talk, E-mail, RSS,
Remote API
E-mail, CCTray
Android, E-mail, Google Calendar,
IRC, XMPP, RSS, Twitter
E-mail, XMPP, RSS, IDE, SysTray
E-mail
E-mail, SOAP
18. Итог
Инструмент Вывод
Хороший инструмент, но не имеет веских
преимуществ перед бесплатными аналогами
Бесплатный, но не интегрируется с баг-
трекерами и имеет небогатый выбор способов
нотификации и совместимых IDE
Мощный многофункциональный инструмент с
огромным количеством плагинов. Бесплатный
Не уступает Jenkins по мощности и гибкости,
интеллектуальная автоматическая конфигурация
Примечателен тем, что является облачным CI-
сервером, с предоставляемой машиной для
билда. Для бесплатного – 1 контейнер
Ориентирован прежде всего на стек Microsoft,
поэтому для Java подходит меньше других