global continues integration
TRANSCRIPT
![Page 1: Global Continues Integration](https://reader035.vdocuments.site/reader035/viewer/2022070602/587b15d11a28abb15c8b75e1/html5/thumbnails/1.jpg)
1 | © 2016 RingCentral, Inc. All rights reserved.
Global CI, что это, или что не так в классическом CIАкмаев Дмитрий. Санкт-Петербург. DINS
![Page 2: Global Continues Integration](https://reader035.vdocuments.site/reader035/viewer/2022070602/587b15d11a28abb15c8b75e1/html5/thumbnails/2.jpg)
2 | © 2016 RingCentral, Inc. All rights reserved.
О себе
► Акмаев Дмитрий► Lead QA Automation в DINS
• до этого Quest Software (DELL), I-FREE► 12 лет в тестировании► Управляю проектом Global CI
![Page 3: Global Continues Integration](https://reader035.vdocuments.site/reader035/viewer/2022070602/587b15d11a28abb15c8b75e1/html5/thumbnails/3.jpg)
3 | © 2016 RingCentral, Inc. All rights reserved.
Определение CI
![Page 4: Global Continues Integration](https://reader035.vdocuments.site/reader035/viewer/2022070602/587b15d11a28abb15c8b75e1/html5/thumbnails/4.jpg)
4 | © 2016 RingCentral, Inc. All rights reserved.
Определение CI
► Что это такое► Какие проблемы решает► В каких случаях не работает
![Page 5: Global Continues Integration](https://reader035.vdocuments.site/reader035/viewer/2022070602/587b15d11a28abb15c8b75e1/html5/thumbnails/5.jpg)
5 | © 2016 RingCentral, Inc. All rights reserved.
Предыстория
![Page 6: Global Continues Integration](https://reader035.vdocuments.site/reader035/viewer/2022070602/587b15d11a28abb15c8b75e1/html5/thumbnails/6.jpg)
6 | © 2016 RingCentral, Inc. All rights reserved.
Предыстория
► Огромная связанная система (более 170 компонентов)
► Наличие Legacy кода► Единовременная разработка в 4 странах► Сложная интеграция
![Page 7: Global Continues Integration](https://reader035.vdocuments.site/reader035/viewer/2022070602/587b15d11a28abb15c8b75e1/html5/thumbnails/7.jpg)
7 | © 2016 RingCentral, Inc. All rights reserved.
Проблемы тестирования
![Page 8: Global Continues Integration](https://reader035.vdocuments.site/reader035/viewer/2022070602/587b15d11a28abb15c8b75e1/html5/thumbnails/8.jpg)
8 | © 2016 RingCentral, Inc. All rights reserved.
Проблемы тестирования
► Полная тестовая инфраструра слишком громоздка► Обновление занимает продолжительное время► Автотесты используют различные подходы и языки
программирования► Дублирование проверок разными командами► Команды под проект
![Page 9: Global Continues Integration](https://reader035.vdocuments.site/reader035/viewer/2022070602/587b15d11a28abb15c8b75e1/html5/thumbnails/9.jpg)
9 | © 2016 RingCentral, Inc. All rights reserved.
Появление GCI
![Page 10: Global Continues Integration](https://reader035.vdocuments.site/reader035/viewer/2022070602/587b15d11a28abb15c8b75e1/html5/thumbnails/10.jpg)
10 | © 2016 RingCentral, Inc. All rights reserved.
Что такое GCI
► Интеграционный CI► Тестовое окружение
максимально близкое к PRO► Полное собрание автотестов► Индикатор стабильности
транка
![Page 11: Global Continues Integration](https://reader035.vdocuments.site/reader035/viewer/2022070602/587b15d11a28abb15c8b75e1/html5/thumbnails/11.jpg)
11 | © 2016 RingCentral, Inc. All rights reserved.
Процесс передачи проекта
► Законченный проект• Протестирован• Нет критичных багов
► Передача автотестов• Не должны мешать другим• Не менять окружение• Не дольше 10 часов
► Указываются изменяемые компоненты
![Page 12: Global Continues Integration](https://reader035.vdocuments.site/reader035/viewer/2022070602/587b15d11a28abb15c8b75e1/html5/thumbnails/12.jpg)
12 | © 2016 RingCentral, Inc. All rights reserved.
Проблемы GCI и их решения
![Page 13: Global Continues Integration](https://reader035.vdocuments.site/reader035/viewer/2022070602/587b15d11a28abb15c8b75e1/html5/thumbnails/13.jpg)
13 | © 2016 RingCentral, Inc. All rights reserved.
Снежная лавина
► Переработка тестовой базы► Приоритезация► Code Coverage
![Page 14: Global Continues Integration](https://reader035.vdocuments.site/reader035/viewer/2022070602/587b15d11a28abb15c8b75e1/html5/thumbnails/14.jpg)
14 | © 2016 RingCentral, Inc. All rights reserved.
Время выполнения
► Паралельный запуск► Увеличение ресурсов► Анализ тестов на таймауты
![Page 15: Global Continues Integration](https://reader035.vdocuments.site/reader035/viewer/2022070602/587b15d11a28abb15c8b75e1/html5/thumbnails/15.jpg)
15 | © 2016 RingCentral, Inc. All rights reserved.
Сбор статистики
► Запись результатов в базу
![Page 16: Global Continues Integration](https://reader035.vdocuments.site/reader035/viewer/2022070602/587b15d11a28abb15c8b75e1/html5/thumbnails/16.jpg)
16 | © 2016 RingCentral, Inc. All rights reserved.
Поддержка
► Выделенные люди► Унификация тестов► Cокращение фреймворков
![Page 17: Global Continues Integration](https://reader035.vdocuments.site/reader035/viewer/2022070602/587b15d11a28abb15c8b75e1/html5/thumbnails/17.jpg)
17 | © 2016 RingCentral, Inc. All rights reserved.
Анализ результатов
► Пометка известных падений► Получение разницы между
прогонами► Разовый перепрогон упавших
тестов
![Page 18: Global Continues Integration](https://reader035.vdocuments.site/reader035/viewer/2022070602/587b15d11a28abb15c8b75e1/html5/thumbnails/18.jpg)
18 | © 2016 RingCentral, Inc. All rights reserved.
Тесты меняющие окружение
► Просить так не делать► Заглушки► Аккаунт генератор
![Page 19: Global Continues Integration](https://reader035.vdocuments.site/reader035/viewer/2022070602/587b15d11a28abb15c8b75e1/html5/thumbnails/19.jpg)
19 | © 2016 RingCentral, Inc. All rights reserved.
Это не я сломал
► Контроль изменений► Расписание мерджей► Ручное обновление окружения
![Page 20: Global Continues Integration](https://reader035.vdocuments.site/reader035/viewer/2022070602/587b15d11a28abb15c8b75e1/html5/thumbnails/20.jpg)
20 | © 2016 RingCentral, Inc. All rights reserved.
Перекладывание задач Local CI на GCI
► Требовать результаты локального CI
► Быть жесче с багами, пропущенными в local CI
![Page 21: Global Continues Integration](https://reader035.vdocuments.site/reader035/viewer/2022070602/587b15d11a28abb15c8b75e1/html5/thumbnails/21.jpg)
21 | © 2016 RingCentral, Inc. All rights reserved.
Заключение
![Page 22: Global Continues Integration](https://reader035.vdocuments.site/reader035/viewer/2022070602/587b15d11a28abb15c8b75e1/html5/thumbnails/22.jpg)
22 | © 2016 RingCentral, Inc. All rights reserved.
Заключение
► GCI не заменяет локальные CI► Требует дополнительные ресурсы► Помогает находить сложные интеграционные
проблемы► Сокращает регрессию
![Page 23: Global Continues Integration](https://reader035.vdocuments.site/reader035/viewer/2022070602/587b15d11a28abb15c8b75e1/html5/thumbnails/23.jpg)
23 | © 2016 RingCentral, Inc. All rights reserved.
Спасибо
![Page 24: Global Continues Integration](https://reader035.vdocuments.site/reader035/viewer/2022070602/587b15d11a28abb15c8b75e1/html5/thumbnails/24.jpg)
24 | © 2016 RingCentral, Inc. All rights reserved.
Контакты
► [email protected]► https://vk.com/akmaev► https://www.facebook.com/dmitry.akmaev► https://www.linkedin.com/in/dmitry-akmae
v-1306b986