selenium camp 2013
TRANSCRIPT
Наш путь от 90 до 6500 тестов.
За кулисамиИван Медведев
Что нужно малому бизнесу?
Деньги!
Что нужно государству?
Как не заплатить больше?
Деньги!
Нельзя сделать всю бухгалтерию
Как мы собираемся ее делать?
MVP (minimum viable product)
Постепенно усложняем, выпуская новые фичи
Много релизов
Хорошо, когда релиз первый
Не ведаем, что творим
Иногда, ведаем, но творим
Каждый раз тестировать руками долго
А оно это надо
Нужны автоматические тесты
Типичный бухгалтер
Типичный предприниматель
Настоящий предприниматель
Что нужно хипстеру?
Хипстеру нужен iPhone
Нужны хорошие интерфейсы
Нужны функциональные тесты
Сложно реализовывать
Много ошибок
Итого
Нужно часто релизиться
Функциональные тесты проходят медленно
Continuous Integration
А что советует google?
Развернули 3 конфигурации
Больше
функций
интерфейсов
нюансов
тестов
1 ч
2 ч
5 ч
Все медленно
1 ч
2 ч
5 ч
Отказались от медленных конфигураций
Chrome ведет себя не как Chrome
Периодически пристреливаем Chrome
Вынуждены ждать вечно
Как можно ускорять?
Можно писать в базу
Можно запускать не все
Можно параллелить
Это файл проекта (.csproj) — xml
Его можно модифицировать перед запуском на агентах
10 10 10
Параллелить научились
Можно купить или арендовать сервер
Можно купить через дорогу
Хотим прогонять две ветки
Не всегда тесты зеленые
Кто нсрл на паровоз?
Continuous Integration все время должна быть перед
глазами
Телевизор должен быть большим
Что показывают?
Поднять глаза вверх — это непросто
Continuous Integration разговаривает с нами в
прямом смысле этого слова
В одной комнате с QA
могут проходить, могут не проходить, а могут ни то, ни другое
Нужно разогревать
Перегрузка
Неправильное время
Связанные тесты
Больше терпения
Дежурный инженер
Итого
6500 тысяч тестов
Общее время прогона — 40 минут
Требует усилий только одного разработчика
Результаты представлены максимально доступно
Релиз минимум раз в месяц