КАК СДЕЛАТЬ СВОЙ TRAVIS CI
VAGRANT + KVM
@p0deje
[email protected]
Thursday, October 3, 13
Slide 2
Slide 2 text
АЛЕКСЕЙ РОДИОНОВ
• 7+ лет в тестировании
• Paradev @ Toptal
• Code monkey @ Watir
• (ex) Контрибутор @ Mozilla
Thursday, October 3, 13
Slide 3
Slide 3 text
ЧТО ТАКОЕ TRAVIS CI
• Сервис непрерывной интеграции
• Интеграция с Github
• Тесты для каждого Pull Request
• Интеграция с Campfire/HipChat/IRC
• Изолированное окружение
Thursday, October 3, 13
Slide 4
Slide 4 text
В НАЧАЛЕ
• Rails, RSpec
• Cucumber + Watir-WebDriver
• Github, Jenkins
• Specs ➜ Smoke tests ➜ Sanity tests
• Ghprb
• parallel_tests, Selenium Grid
Thursday, October 3, 13
Slide 5
Slide 5 text
ПРОБЛЕМЫ
• 1,5 тыс. спек
• 2 тыс. фич
• ~ 12 часов полный прогон
• Глюки Selenium Grid
• Shared resources (db, файлы, порты)
• Масштабируемость и переносимость
Thursday, October 3, 13
Slide 6
Slide 6 text
РЕШЕНИЕ
• Нужно изолированное окружение
• Один процесс в одном окружении
• Selenium Grid
Thursday, October 3, 13
Slide 7
Slide 7 text
VAGRANT
• Создание виртуальных машин из
basebox
• Настройка машины через Puppet,
Chef, Shell, etc.
• VirtualBox, VMware из коробки
• Плагины
Thursday, October 3, 13