2. АЛЕКСЕЙ РОДИОНОВ
• 7+ лет в тестировании
• Paradev @Toptal
• Code monkey @ Watir
• (ex) Контрибутор @ Mozilla
Thursday, October 3, 13
3. ЧТО ТАКОЕTRAVIS CI
• Сервис непрерывной интеграции
• Интеграция с Github
• Тесты для каждого Pull Request
• Интеграция с Campfire/HipChat/IRC
• Изолированное окружение
Thursday, October 3, 13
5. ПРОБЛЕМЫ
• 1,5 тыс. спек
• 2 тыс. фич
• ~ 12 часов полный прогон
• Глюки Selenium Grid
• Shared resources (db, файлы, порты)
• Масштабируемость и переносимость
Thursday, October 3, 13
7. VAGRANT
• Создание виртуальных машин из
basebox
• Настройка машины через Puppet,
Chef, Shell, etc.
• VirtualBox,VMware из коробки
• Плагины
Thursday, October 3, 13
9. ПЛЮСЫ
• Окружение легко и быстро
разворачивается
• Версии софта в коде
• “У меня не воспроизводится”
• Обновляющиеся браузеры?
Thursday, October 3, 13
22. УЛУЧШЕНИЯ
• Veewee (Packer)
• Сделали полную копию production в
VM (os, db, locale, date, ruby, libs, etc.)
Thursday, October 3, 13
23. УЛУЧШЕНИЯ
• vagrant-exec для удобной работы с
машиной
• p0deje/display для запуска Selenium
тестов
Thursday, October 3, 13
24. ТЕПЕРЬ
• 4 тыс. спеков
• 3 тыс. фич
• ~ 5 часов на полный прогон
• Никаких проблем с Grid
• Никаких хаков с shared resources
Thursday, October 3, 13
25. ТЕПЕРЬ
• 11 параллельно работающихVM
• 155 виртуальных машин
• Масштабируемость и переносимость
• Отказоустойчивость
Thursday, October 3, 13
26. • Параллельное созданиеVM (~8)
• Stale NFS Error в1% билдов (who
cares)
НЕРЕШЕННЫЕ ПРОБЛЕМЫ
Thursday, October 3, 13
27. ЧТО ДАЛЬШЕ
• Кастомный сервер с изменениями для каждого Pull Request
• Миграция на Xen
• Миграция на EC2, DigitalOcean
Thursday, October 3, 13