Badoo: Cross platform Mobile Test Automation and Continuos Delivery
Microservices for test automation
-
Upload
nikita-makarov -
Category
Internet
-
view
2.611 -
download
2
Transcript of Microservices for test automation
Микросервисы для автоматизации тестирования - опыт «Одноклассников»
Никита Макаров
РазработчикТестировщикМенеджерИнженер
http://test-failed.blogspot.com
• Теория• Практические кейсы «Одноклассников»• Мысли на тему
План
О чем поговорим?
Hype
Microservices Hype
Микросервисы
Что такое микросервисы
Монолит
Монолит
Микросервисы
Микросервисная архитектура
Масштабирование
Масштабирование
A/B-тестирование
Эксперименты
• Выделение компонентов в сервисы• Организация вокруг бизнес-домена (DDD)• Связи между узлами не имеют
фукнционального значения• Децентрализация управления и данных• Эволюционный дизайн и дизайн «на отказ»
Характерные черты
Характерные черты
μ - ?
Проблема
Size does matter
Здоровый скептицизм
Иногда это так
Выбор
Изоляция vs. Распределенная система
Практические кейсы
Практические кейсы
Соц.сеть under the hood
Пользователи и контент
Масштабирование
Масштабирование
наши сервисы
микросервисы в живой природе
Хранение и генерация контента
Контент
Контент
Хранение контента
Генераторы
Генерация контента
Видео
Генерированное видео
История про WebDriver Torso от Google
Боты
Storekeeper
Регистрация
Регистрация
Удаление
Удаление
• Регистрировать ботов• Отдавать ботов в тесты
• пол, возраст, прочее…• Удалять ботов• Разблокировать ботов
Storekeeper
Что умеет
TDS в Spotify
Storekeeper
Как это работает
Mnemonic
Mnemonic
Окружения
Работа на окружениях
Mnemonic
Хранилище для окружений
Key
Prod value
Test valueStage value
Dev value
Ботнет
Ботнет
Ботнет
Ботнет
Название презентации
Как это работает
Revolver
С чего все началось
Название презентации
Мир вокруг
Сервисы
Тесты вокруг
API
API Gateway
История
Начало (02-2012)
Jenkins
Se
SeSe Se
История
+ Revolver
Jenkins
Se
SeSe Se
Revolver
История
+Content Generators
Jenkins
Se
SeSe Se
RevolverContent Generators
История
+Node Utils
Jenkins
Se
Se+A
Se+A
Se+A
RevolverContent Generators
История
+Mnemonic, -Revolver (2013)
Jenkins
Se
Se+A
Se+A
Se+A
MnemonicContent Generators
История
+StoreKeeper
Jenkins
Se
Se+A
Se+A
Se+A
MnemonicContent Generators
Storekeeper
История
+Watson (2013)
Jenkins
Se
Se+A
Se+A
Se+A
MnemonicContent Generators
StorekeeperWatson
История
+Registrator (2014)
Jenkins
Se
Se+A
Se+A
Se+A
MnemonicContent Generators
StorekeeperWatson Registrator
История
+Holmes (01-2015)
Jenkins
Se
Se+A
Se+A
Se+A
MnemonicContent Generators
StorekeeperWatson Registrator
Holmes
История
+Berrimor (05-2015)
Jenkins
Se
Se+A
Se+A
Se+A
MnemonicContent Generators
StorekeeperWatson Registrator
Holmes
Berrimor
Сейчас
-Selenium Grid (09-2015)
Jenkins
MnemonicContent Generators
StorekeeperWatson Registrator
Holmes
Berrimor
Se+A
Se+A
Se+A
NodeManager
Se+A
Se+A
Se+A
NodeManager
Se+A
Se+A
Se+A
NodeManager
Lessons learned
Debug
Debug в распределенной системе
• Debug• Deployment• Monitoring• Log aggregation
Что делать
Что делать
Никита Макаров[email protected]@papaminos