Доклад Владислава Чернова на конференции LoveQA. "Continuous...

24
Continuous delivery в крупном интернет проекте Владислав Чернов Release Engineer

description

Презентация с первой конференции Badoo для тестировщиков LoveQA. "Continuous delivery в крупном интернет проекте". Доклад Владислава Чернова, Badoo.

Transcript of Доклад Владислава Чернова на конференции LoveQA. "Continuous...

Page 1: Доклад Владислава Чернова на конференции LoveQA. "Continuous delivery в крупном интернет проекте".

Continuous delivery в крупном интернет

проекте

Владислав ЧерновRelease Engineer

Page 2: Доклад Владислава Чернова на конференции LoveQA. "Continuous delivery в крупном интернет проекте".

Содержание

1. Основы Continuous Delivery.

2. Что хотели улучшить?

3. Что мы используем?

4. Проблемы и их решения.

5. Выводы.

Page 3: Доклад Владислава Чернова на конференции LoveQA. "Continuous delivery в крупном интернет проекте".
Page 4: Доклад Владислава Чернова на конференции LoveQA. "Continuous delivery в крупном интернет проекте".

Основная схема

Page 5: Доклад Владислава Чернова на конференции LoveQA. "Continuous delivery в крупном интернет проекте".

Что хотели улучшить

● Качество ПО

● Прозрачность процессов

● Скорость выкладки

Page 6: Доклад Владислава Чернова на конференции LoveQA. "Continuous delivery в крупном интернет проекте".
Page 7: Доклад Владислава Чернова на конференции LoveQA. "Continuous delivery в крупном интернет проекте".

Version Control System

Page 8: Доклад Владислава Чернова на конференции LoveQA. "Continuous delivery в крупном интернет проекте".

Плюсы и минусы

+ ● Поэтапный процесс тестирования● Формирование и контроль релиза● Быстрый откат задачи из релиза

-● Только для быстрых релизов

Page 9: Доклад Владислава Чернова на конференции LoveQA. "Continuous delivery в крупном интернет проекте".

Контроль качества

Page 10: Доклад Владислава Чернова на конференции LoveQA. "Continuous delivery в крупном интернет проекте".

Этапы тестирования

● Hooks● Code review● Автоматический запуск юнит тестов● Devel● Shot● Staging● Опциональное тестирование на production

Page 11: Доклад Владислава Чернова на конференции LoveQA. "Continuous delivery в крупном интернет проекте".

Continuous Integration

Page 12: Доклад Владислава Чернова на конференции LoveQA. "Continuous delivery в крупном интернет проекте".

Continuous Integration

● Уведемление об ошибках сборки

● Отчет о пройденных автотестах

● Continuous deployment на staging

● Smoke test и откат сборки

● Покрытие кода

Page 13: Доклад Владислава Чернова на конференции LoveQA. "Continuous delivery в крупном интернет проекте".

Aida

Page 14: Доклад Владислава Чернова на конференции LoveQA. "Continuous delivery в крупном интернет проекте".

Infrastructure for Development and QA

● Дублирование production окружения

● Скорость разработки нового функционала

● Быстрое выявление проблем

● Широкие возможности тестирования

Page 15: Доклад Владислава Чернова на конференции LoveQA. "Continuous delivery в крупном интернет проекте".

Environments

Page 16: Доклад Владислава Чернова на конференции LoveQA. "Continuous delivery в крупном интернет проекте".

Bug tracking system

● Стандарты workflow

● Интеграция с Git, Gitphp и Teamcity

● Формирование и контроль релиза

● Автоматизация рутинных действий

● Дополнительная информация

Page 17: Доклад Владислава Чернова на конференции LoveQA. "Continuous delivery в крупном интернет проекте".

С чем нам пришлось столкнуться?

● Люди ( разнообразие взглядов, неприятие нового)

● Интеграция, адаптация инструментария● Сложность поддержки большой

архитектуры● Нет идеального решения

Page 18: Доклад Владислава Чернова на конференции LoveQA. "Continuous delivery в крупном интернет проекте".

Интеграция с Jira

Вебхуки★ Скрипты по cron-у

Избыточность нотификаций★ Группировка сообщений

Хаотичность внесения изменений★ Единая точка входа

Page 19: Доклад Владислава Чернова на конференции LoveQA. "Continuous delivery в крупном интернет проекте".

Teamcity

Сложность интеграции новых сборок★ Шаблонизация сборок

Избыточность нотификаций★ Разделение на потоки нотификаций

Page 20: Доклад Владислава Чернова на конференции LoveQA. "Continuous delivery в крупном интернет проекте".

Автоматизированное тестирование

Время выполнения тестов★ Многопоточность★ Постоянная оптимизация

Отложенное тестирование самой системы★ Автоматизированное тестирование★ Staging

Page 21: Доклад Владислава Чернова на конференции LoveQA. "Continuous delivery в крупном интернет проекте".

Выводы

● 70% задач на production в течении суток

● Формирование релиза

● Отсутствие рутинных действий

Page 22: Доклад Владислава Чернова на конференции LoveQA. "Continuous delivery в крупном интернет проекте".

Версия Android 2.24

Page 23: Доклад Владислава Чернова на конференции LoveQA. "Continuous delivery в крупном интернет проекте".

Версия Android 2.25

Page 24: Доклад Владислава Чернова на конференции LoveQA. "Continuous delivery в крупном интернет проекте".

Вопросы?Владислав Чернов

E-mail: [email protected]: chernovvs

Twitter: @BadooDevHabrahabr: bit.ly/BadooHabr