SlideShare a Scribd company logo
1 of 15
Готовим Docker для Автоматизации
Тестирования
Вадим Гущенсков
Немного о себе
● Lead software test automation
engineer в Epam Systems
● 7 лет в IT и автоматизации
тестирования
● Основной фокус работы -
автоматизация Web-сервисов
Немного о проекте
Microservices
Cutting-edge
technologies
● Микро-сервис архитектура
● Заказчик технологически
подкован, любит строить
инфраструктуру используя
последние технологии.
● Весь деплой, куда-бы то ни было
происходит в Docker-контейнерах
Преимущества Docker
● Нетребовательность
к окружению
● Относительная
лёгкость установки
● Docker-образ - это
полноценный
артефакт
Developer VM
Local Server Data Center
Основные вызовы
● Каким образом встроить тестирование в
проект?
● Можем ли мы как-то улучшить
тестирование с помощью Docker?
● Как запускать наши тесты и использовать
одну и ту же версию тестов для
соответствующей версии web-сервиса.
● Как мониторить продакшен?
Окружение по-старинке
Идеальная ситуация
Стратегия тестирования
Ввести следующие уровни
тестирования:
● Изолированные
функциональные тесты
● Тесты верификации
установки - Deployment
verification test (DVT)
● Периодические “Canary”-
тесты
Подготовка артефактов
● Executable uber-jar с тестами
размещается в docker-образе с web-
сервисом
● В артефакт добавляется entrypoint.sh,
который понимает команды ‘start’ и ‘test’
● Артефакт отправляется в собственный
docker registry
Isolated testing
● Мы используем Docker-
in-Docker
● У нас есть образ со
всеми зависимостями,
которые тяжело
замокать: базы данных
(Postgres, MongoDB,
Redis), очередь
сообщений (RabbitMQ)
и другие зависимости.
● Контейнером с
изолированной средой
можно делиться
Deployment
Deployment Verification Tests
● Ноды последовательно
выводятся из кластера,
на них запускается
деплой и тесты
● Тесты запускаются на
той же ноде, что и
сервис в отдельном
docker-контейнере
● Можно ограничивать
ресурсы тестов
флагами: --memory, --
cpu-shares
Canary testing
● Всегда можно зайти на любую продакш-ноду и запустить
self-test
● При помощи Google Cloud Platform и Amazon Web
Services можно арендовать сервера в разных зонах и
запускать тесты по cron
Grafana widget для Canary
Questions

More Related Content

What's hot

DevOps Fest 2020. Сергей Погорелов. Локально распределенное окружение разрабо...
DevOps Fest 2020. Сергей Погорелов. Локально распределенное окружение разрабо...DevOps Fest 2020. Сергей Погорелов. Локально распределенное окружение разрабо...
DevOps Fest 2020. Сергей Погорелов. Локально распределенное окружение разрабо...DevOps_Fest
 
Test driven development in net
Test driven development in netTest driven development in net
Test driven development in netAlex Tumanoff
 
QA Fest 2019. Александр Хотемской. WebdriverIO + Puppeteer. Double gun - doub...
QA Fest 2019. Александр Хотемской. WebdriverIO + Puppeteer. Double gun - doub...QA Fest 2019. Александр Хотемской. WebdriverIO + Puppeteer. Double gun - doub...
QA Fest 2019. Александр Хотемской. WebdriverIO + Puppeteer. Double gun - doub...QAFest
 
Kubernetes
KubernetesKubernetes
KubernetesSQALab
 
CodeFest 2012. Курносова Т. и Баяндин А. — Selenium2: полевые испытания
CodeFest 2012. Курносова Т. и Баяндин А. — Selenium2: полевые испытанияCodeFest 2012. Курносова Т. и Баяндин А. — Selenium2: полевые испытания
CodeFest 2012. Курносова Т. и Баяндин А. — Selenium2: полевые испытанияCodeFest
 
"Redux: the best for isomorphic apps", Денис Измайлов, MoscowJS 25
"Redux: the best for isomorphic apps", Денис Измайлов, MoscowJS 25"Redux: the best for isomorphic apps", Денис Измайлов, MoscowJS 25
"Redux: the best for isomorphic apps", Денис Измайлов, MoscowJS 25MoscowJS
 
Apache JMeter vs LoadRunner: на заре справедливости, сравнение инструментов н...
Apache JMeter vs LoadRunner: на заре справедливости, сравнение инструментов н...Apache JMeter vs LoadRunner: на заре справедливости, сравнение инструментов н...
Apache JMeter vs LoadRunner: на заре справедливости, сравнение инструментов н...SQALab
 
Даниил Соколюк "ReactJS.NET — опыт рендеринга на сервере"
 Даниил Соколюк "ReactJS.NET — опыт рендеринга на сервере" Даниил Соколюк "ReactJS.NET — опыт рендеринга на сервере"
Даниил Соколюк "ReactJS.NET — опыт рендеринга на сервере"MskDotNet Community
 
Кирилл Комлев. О реализации continuous integration для web проектов
Кирилл Комлев. О реализации continuous integration для web проектовКирилл Комлев. О реализации continuous integration для web проектов
Кирилл Комлев. О реализации continuous integration для web проектовOlesya_V
 
Сергей Орлов
Сергей ОрловСергей Орлов
Сергей ОрловCodeFest
 
Jenkins 2.0: Организуем тестирование в составе Continuous Delivery
Jenkins 2.0: Организуем тестирование в составе Continuous DeliveryJenkins 2.0: Организуем тестирование в составе Continuous Delivery
Jenkins 2.0: Организуем тестирование в составе Continuous DeliverySQALab
 
Web application testing architecture
Web application testing architectureWeb application testing architecture
Web application testing architectureAndrey Lazarev
 
Иван Крутов - Автоматизация сборки Java-проекта
Иван Крутов - Автоматизация сборки Java-проектаИван Крутов - Автоматизация сборки Java-проекта
Иван Крутов - Автоматизация сборки Java-проектаYandex
 
Moscow Jenkins Meetup #1. Pipeline для инженеров. Обзор экосистемы
Moscow Jenkins Meetup #1. Pipeline для инженеров. Обзор экосистемыMoscow Jenkins Meetup #1. Pipeline для инженеров. Обзор экосистемы
Moscow Jenkins Meetup #1. Pipeline для инженеров. Обзор экосистемыOleg Nenashev
 
Автоматизируй это! Jenkins с fastlane под капотом
Автоматизируй это! Jenkins с fastlane под капотомАвтоматизируй это! Jenkins с fastlane под капотом
Автоматизируй это! Jenkins с fastlane под капотомMaxim Vialyx
 
QA Fes 2016. Александр Неделяев. Система мониторинга производительности своим...
QA Fes 2016. Александр Неделяев. Система мониторинга производительности своим...QA Fes 2016. Александр Неделяев. Система мониторинга производительности своим...
QA Fes 2016. Александр Неделяев. Система мониторинга производительности своим...QAFest
 
Тестирование REST-сервисов с применением инженерных практик
Тестирование REST-сервисов с применением инженерных практикТестирование REST-сервисов с применением инженерных практик
Тестирование REST-сервисов с применением инженерных практикSQALab
 
QA Fest 2016. Александр Неделяев. Браузерные помощники тестировщика
QA Fest 2016. Александр Неделяев. Браузерные помощники тестировщикаQA Fest 2016. Александр Неделяев. Браузерные помощники тестировщика
QA Fest 2016. Александр Неделяев. Браузерные помощники тестировщикаQAFest
 

What's hot (20)

DevOps Fest 2020. Сергей Погорелов. Локально распределенное окружение разрабо...
DevOps Fest 2020. Сергей Погорелов. Локально распределенное окружение разрабо...DevOps Fest 2020. Сергей Погорелов. Локально распределенное окружение разрабо...
DevOps Fest 2020. Сергей Погорелов. Локально распределенное окружение разрабо...
 
Непрерывная интеграция (Марина Пестова)
Непрерывная интеграция (Марина Пестова)Непрерывная интеграция (Марина Пестова)
Непрерывная интеграция (Марина Пестова)
 
Test driven development in net
Test driven development in netTest driven development in net
Test driven development in net
 
QA Fest 2019. Александр Хотемской. WebdriverIO + Puppeteer. Double gun - doub...
QA Fest 2019. Александр Хотемской. WebdriverIO + Puppeteer. Double gun - doub...QA Fest 2019. Александр Хотемской. WebdriverIO + Puppeteer. Double gun - doub...
QA Fest 2019. Александр Хотемской. WebdriverIO + Puppeteer. Double gun - doub...
 
Kubernetes
KubernetesKubernetes
Kubernetes
 
CodeFest 2012. Курносова Т. и Баяндин А. — Selenium2: полевые испытания
CodeFest 2012. Курносова Т. и Баяндин А. — Selenium2: полевые испытанияCodeFest 2012. Курносова Т. и Баяндин А. — Selenium2: полевые испытания
CodeFest 2012. Курносова Т. и Баяндин А. — Selenium2: полевые испытания
 
"Redux: the best for isomorphic apps", Денис Измайлов, MoscowJS 25
"Redux: the best for isomorphic apps", Денис Измайлов, MoscowJS 25"Redux: the best for isomorphic apps", Денис Измайлов, MoscowJS 25
"Redux: the best for isomorphic apps", Денис Измайлов, MoscowJS 25
 
Apache JMeter vs LoadRunner: на заре справедливости, сравнение инструментов н...
Apache JMeter vs LoadRunner: на заре справедливости, сравнение инструментов н...Apache JMeter vs LoadRunner: на заре справедливости, сравнение инструментов н...
Apache JMeter vs LoadRunner: на заре справедливости, сравнение инструментов н...
 
Даниил Соколюк "ReactJS.NET — опыт рендеринга на сервере"
 Даниил Соколюк "ReactJS.NET — опыт рендеринга на сервере" Даниил Соколюк "ReactJS.NET — опыт рендеринга на сервере"
Даниил Соколюк "ReactJS.NET — опыт рендеринга на сервере"
 
Кирилл Комлев. О реализации continuous integration для web проектов
Кирилл Комлев. О реализации continuous integration для web проектовКирилл Комлев. О реализации continuous integration для web проектов
Кирилл Комлев. О реализации continuous integration для web проектов
 
Сергей Орлов
Сергей ОрловСергей Орлов
Сергей Орлов
 
Jenkins 2.0: Организуем тестирование в составе Continuous Delivery
Jenkins 2.0: Организуем тестирование в составе Continuous DeliveryJenkins 2.0: Организуем тестирование в составе Continuous Delivery
Jenkins 2.0: Организуем тестирование в составе Continuous Delivery
 
Web application testing architecture
Web application testing architectureWeb application testing architecture
Web application testing architecture
 
Иван Крутов - Автоматизация сборки Java-проекта
Иван Крутов - Автоматизация сборки Java-проектаИван Крутов - Автоматизация сборки Java-проекта
Иван Крутов - Автоматизация сборки Java-проекта
 
Cистемы автоматической сборки проектов (Полина Фоминых)
Cистемы автоматической сборки проектов (Полина Фоминых)Cистемы автоматической сборки проектов (Полина Фоминых)
Cистемы автоматической сборки проектов (Полина Фоминых)
 
Moscow Jenkins Meetup #1. Pipeline для инженеров. Обзор экосистемы
Moscow Jenkins Meetup #1. Pipeline для инженеров. Обзор экосистемыMoscow Jenkins Meetup #1. Pipeline для инженеров. Обзор экосистемы
Moscow Jenkins Meetup #1. Pipeline для инженеров. Обзор экосистемы
 
Автоматизируй это! Jenkins с fastlane под капотом
Автоматизируй это! Jenkins с fastlane под капотомАвтоматизируй это! Jenkins с fastlane под капотом
Автоматизируй это! Jenkins с fastlane под капотом
 
QA Fes 2016. Александр Неделяев. Система мониторинга производительности своим...
QA Fes 2016. Александр Неделяев. Система мониторинга производительности своим...QA Fes 2016. Александр Неделяев. Система мониторинга производительности своим...
QA Fes 2016. Александр Неделяев. Система мониторинга производительности своим...
 
Тестирование REST-сервисов с применением инженерных практик
Тестирование REST-сервисов с применением инженерных практикТестирование REST-сервисов с применением инженерных практик
Тестирование REST-сервисов с применением инженерных практик
 
QA Fest 2016. Александр Неделяев. Браузерные помощники тестировщика
QA Fest 2016. Александр Неделяев. Браузерные помощники тестировщикаQA Fest 2016. Александр Неделяев. Браузерные помощники тестировщика
QA Fest 2016. Александр Неделяев. Браузерные помощники тестировщика
 

Similar to Готовим Docker для Автоматизации Тестирования

Как hh.ru дошли до 500 релизов в квартал без потери в качестве
Как hh.ru дошли до 500 релизов в квартал без потери в качествеКак hh.ru дошли до 500 релизов в квартал без потери в качестве
Как hh.ru дошли до 500 релизов в квартал без потери в качествеSQALab
 
QA Fes 2016. Анастасия Асеева. Роль тестирования в Devops
QA Fes 2016. Анастасия Асеева. Роль тестирования в DevopsQA Fes 2016. Анастасия Асеева. Роль тестирования в Devops
QA Fes 2016. Анастасия Асеева. Роль тестирования в DevopsQAFest
 
SECON'2017, Кулагин Егор, Непрерывное развертывание. Конвейер здорового челов...
SECON'2017, Кулагин Егор, Непрерывное развертывание. Конвейер здорового челов...SECON'2017, Кулагин Егор, Непрерывное развертывание. Конвейер здорового челов...
SECON'2017, Кулагин Егор, Непрерывное развертывание. Конвейер здорового челов...SECON
 
Станислав Иващенко: “Kubernetes как облако для CI”
Станислав Иващенко: “Kubernetes как облако для CI” Станислав Иващенко: “Kubernetes как облако для CI”
Станислав Иващенко: “Kubernetes как облако для CI” Provectus
 
Dev & test на windows azure
Dev & test на windows azureDev & test на windows azure
Dev & test на windows azureMicrosoft
 
RST2014_Taganrog_IncodingFramework
RST2014_Taganrog_IncodingFrameworkRST2014_Taganrog_IncodingFramework
RST2014_Taganrog_IncodingFrameworkRussianStartupTour
 
Qulix Systems | Автоматизация функционального тестирования
Qulix Systems | Автоматизация функционального тестированияQulix Systems | Автоматизация функционального тестирования
Qulix Systems | Автоматизация функционального тестированияQulix Systems
 
Организация эффективной работы команды при разработке и поддержке сложной инф...
Организация эффективной работы команды при разработке и поддержке сложной инф...Организация эффективной работы команды при разработке и поддержке сложной инф...
Организация эффективной работы команды при разработке и поддержке сложной инф...tabtabus
 
Test Driven Development in .NET Applications
Test Driven Development in .NET ApplicationsTest Driven Development in .NET Applications
Test Driven Development in .NET ApplicationsAnton Vidishchev
 
IT-инфраструктура. FAQ для разработчика
IT-инфраструктура. FAQ для разработчикаIT-инфраструктура. FAQ для разработчика
IT-инфраструктура. FAQ для разработчикаMikhail Chinkov
 
"How to build powerful CI / CD based on GitLab and Docker", Aleksandr Matkovs...
"How to build powerful CI / CD based on GitLab and Docker", Aleksandr Matkovs..."How to build powerful CI / CD based on GitLab and Docker", Aleksandr Matkovs...
"How to build powerful CI / CD based on GitLab and Docker", Aleksandr Matkovs...Provectus
 
серёжа пономарёв @ Kuchyn.com.ua junior java developer программируем по-взро...
серёжа пономарёв @ Kuchyn.com.ua junior java developer  программируем по-взро...серёжа пономарёв @ Kuchyn.com.ua junior java developer  программируем по-взро...
серёжа пономарёв @ Kuchyn.com.ua junior java developer программируем по-взро...Sergey Ponomarev
 
Тестирование веб-проектов в Agile
Тестирование веб-проектов в AgileТестирование веб-проектов в Agile
Тестирование веб-проектов в AgileSQALab
 
Становление процесса автоматизированного тестирования в интернет-магазине ОКЕЙ
Становление процесса автоматизированного тестирования в интернет-магазине ОКЕЙСтановление процесса автоматизированного тестирования в интернет-магазине ОКЕЙ
Становление процесса автоматизированного тестирования в интернет-магазине ОКЕЙCEE-SEC(R)
 
Нагрузочное тестирование проектов на Drupal с использованием Apache JMeter
Нагрузочное тестирование проектов на Drupal с использованием Apache JMeterНагрузочное тестирование проектов на Drupal с использованием Apache JMeter
Нагрузочное тестирование проектов на Drupal с использованием Apache JMeterPVasili
 
Роман Василенко. Continuous delivery или как упростить себе жизнь
Роман Василенко. Continuous delivery или как упростить себе жизньРоман Василенко. Continuous delivery или как упростить себе жизнь
Роман Василенко. Continuous delivery или как упростить себе жизнь_itcampus
 

Similar to Готовим Docker для Автоматизации Тестирования (20)

Как hh.ru дошли до 500 релизов в квартал без потери в качестве
Как hh.ru дошли до 500 релизов в квартал без потери в качествеКак hh.ru дошли до 500 релизов в квартал без потери в качестве
Как hh.ru дошли до 500 релизов в квартал без потери в качестве
 
QA Fes 2016. Анастасия Асеева. Роль тестирования в Devops
QA Fes 2016. Анастасия Асеева. Роль тестирования в DevopsQA Fes 2016. Анастасия Асеева. Роль тестирования в Devops
QA Fes 2016. Анастасия Асеева. Роль тестирования в Devops
 
QAFest. Роль тестирования в Devops
QAFest. Роль тестирования в DevopsQAFest. Роль тестирования в Devops
QAFest. Роль тестирования в Devops
 
SECON'2017, Кулагин Егор, Непрерывное развертывание. Конвейер здорового челов...
SECON'2017, Кулагин Егор, Непрерывное развертывание. Конвейер здорового челов...SECON'2017, Кулагин Егор, Непрерывное развертывание. Конвейер здорового челов...
SECON'2017, Кулагин Егор, Непрерывное развертывание. Конвейер здорового челов...
 
DevOps guide for awesome quality assurance
DevOps guide for awesome quality assuranceDevOps guide for awesome quality assurance
DevOps guide for awesome quality assurance
 
Станислав Иващенко: “Kubernetes как облако для CI”
Станислав Иващенко: “Kubernetes как облако для CI” Станислав Иващенко: “Kubernetes как облако для CI”
Станислав Иващенко: “Kubernetes как облако для CI”
 
Dev & test на windows azure
Dev & test на windows azureDev & test на windows azure
Dev & test на windows azure
 
Wgforge CI/CD
Wgforge CI/CDWgforge CI/CD
Wgforge CI/CD
 
RST2014_Taganrog_IncodingFramework
RST2014_Taganrog_IncodingFrameworkRST2014_Taganrog_IncodingFramework
RST2014_Taganrog_IncodingFramework
 
Qulix Systems | Автоматизация функционального тестирования
Qulix Systems | Автоматизация функционального тестированияQulix Systems | Автоматизация функционального тестирования
Qulix Systems | Автоматизация функционального тестирования
 
Организация эффективной работы команды при разработке и поддержке сложной инф...
Организация эффективной работы команды при разработке и поддержке сложной инф...Организация эффективной работы команды при разработке и поддержке сложной инф...
Организация эффективной работы команды при разработке и поддержке сложной инф...
 
Test Driven Development in .NET Applications
Test Driven Development in .NET ApplicationsTest Driven Development in .NET Applications
Test Driven Development in .NET Applications
 
IT-инфраструктура. FAQ для разработчика
IT-инфраструктура. FAQ для разработчикаIT-инфраструктура. FAQ для разработчика
IT-инфраструктура. FAQ для разработчика
 
"How to build powerful CI / CD based on GitLab and Docker", Aleksandr Matkovs...
"How to build powerful CI / CD based on GitLab and Docker", Aleksandr Matkovs..."How to build powerful CI / CD based on GitLab and Docker", Aleksandr Matkovs...
"How to build powerful CI / CD based on GitLab and Docker", Aleksandr Matkovs...
 
серёжа пономарёв @ Kuchyn.com.ua junior java developer программируем по-взро...
серёжа пономарёв @ Kuchyn.com.ua junior java developer  программируем по-взро...серёжа пономарёв @ Kuchyn.com.ua junior java developer  программируем по-взро...
серёжа пономарёв @ Kuchyn.com.ua junior java developer программируем по-взро...
 
Тестирование веб-проектов в Agile
Тестирование веб-проектов в AgileТестирование веб-проектов в Agile
Тестирование веб-проектов в Agile
 
Становление процесса автоматизированного тестирования в интернет-магазине ОКЕЙ
Становление процесса автоматизированного тестирования в интернет-магазине ОКЕЙСтановление процесса автоматизированного тестирования в интернет-магазине ОКЕЙ
Становление процесса автоматизированного тестирования в интернет-магазине ОКЕЙ
 
Нагрузочное тестирование проектов на Drupal с использованием Apache JMeter
Нагрузочное тестирование проектов на Drupal с использованием Apache JMeterНагрузочное тестирование проектов на Drupal с использованием Apache JMeter
Нагрузочное тестирование проектов на Drupal с использованием Apache JMeter
 
Роман Василенко. Continuous delivery или как упростить себе жизнь
Роман Василенко. Continuous delivery или как упростить себе жизньРоман Василенко. Continuous delivery или как упростить себе жизнь
Роман Василенко. Continuous delivery или как упростить себе жизнь
 
Simonova sql server-enginetesting
Simonova sql server-enginetestingSimonova sql server-enginetesting
Simonova sql server-enginetesting
 

More from COMAQA.BY

Тестирование аналогов инсталлируемых приложений (Android Instant Apps, Progre...
Тестирование аналогов инсталлируемых приложений (Android Instant Apps, Progre...Тестирование аналогов инсталлируемых приложений (Android Instant Apps, Progre...
Тестирование аналогов инсталлируемых приложений (Android Instant Apps, Progre...COMAQA.BY
 
Anton semenchenko. Comaqa Spring 2018. Nine circles of hell. Antipatterns in ...
Anton semenchenko. Comaqa Spring 2018. Nine circles of hell. Antipatterns in ...Anton semenchenko. Comaqa Spring 2018. Nine circles of hell. Antipatterns in ...
Anton semenchenko. Comaqa Spring 2018. Nine circles of hell. Antipatterns in ...COMAQA.BY
 
Vivien Ibironke Ibiyemi. Comaqa Spring 2018. Enhance your Testing Skills With...
Vivien Ibironke Ibiyemi. Comaqa Spring 2018. Enhance your Testing Skills With...Vivien Ibironke Ibiyemi. Comaqa Spring 2018. Enhance your Testing Skills With...
Vivien Ibironke Ibiyemi. Comaqa Spring 2018. Enhance your Testing Skills With...COMAQA.BY
 
Roman Soroka. Comaqa Spring 2018. Глобальный обзор процесса QA и его важность
Roman Soroka. Comaqa Spring 2018. Глобальный обзор процесса QA и его важностьRoman Soroka. Comaqa Spring 2018. Глобальный обзор процесса QA и его важность
Roman Soroka. Comaqa Spring 2018. Глобальный обзор процесса QA и его важностьCOMAQA.BY
 
Roman Iovlev. Comaqa Spring 2018. Архитектура Open Source решений для автомат...
Roman Iovlev. Comaqa Spring 2018. Архитектура Open Source решений для автомат...Roman Iovlev. Comaqa Spring 2018. Архитектура Open Source решений для автомат...
Roman Iovlev. Comaqa Spring 2018. Архитектура Open Source решений для автомат...COMAQA.BY
 
Vladimir Polyakov. Comaqa Spring 2018. Особенности тестирования ПО в предметн...
Vladimir Polyakov. Comaqa Spring 2018. Особенности тестирования ПО в предметн...Vladimir Polyakov. Comaqa Spring 2018. Особенности тестирования ПО в предметн...
Vladimir Polyakov. Comaqa Spring 2018. Особенности тестирования ПО в предметн...COMAQA.BY
 
Kimmo Hakala. Comaqa Spring 2018. Challenges and good QA practices in softwar...
Kimmo Hakala. Comaqa Spring 2018. Challenges and good QA practices in softwar...Kimmo Hakala. Comaqa Spring 2018. Challenges and good QA practices in softwar...
Kimmo Hakala. Comaqa Spring 2018. Challenges and good QA practices in softwar...COMAQA.BY
 
Дмитрий Лемешко. Comaqa Spring 2018. Continuous mobile automation in build pi...
Дмитрий Лемешко. Comaqa Spring 2018. Continuous mobile automation in build pi...Дмитрий Лемешко. Comaqa Spring 2018. Continuous mobile automation in build pi...
Дмитрий Лемешко. Comaqa Spring 2018. Continuous mobile automation in build pi...COMAQA.BY
 
Ivan Katunov. Comaqa Spring 2018. Test Design and Automation for Rest API.
Ivan Katunov. Comaqa Spring 2018. Test Design and Automation for Rest API.Ivan Katunov. Comaqa Spring 2018. Test Design and Automation for Rest API.
Ivan Katunov. Comaqa Spring 2018. Test Design and Automation for Rest API.COMAQA.BY
 
Vadim Zubovich. Comaqa Spring 2018. Красивое тестирование производительности.
Vadim Zubovich. Comaqa Spring 2018. Красивое тестирование производительности.Vadim Zubovich. Comaqa Spring 2018. Красивое тестирование производительности.
Vadim Zubovich. Comaqa Spring 2018. Красивое тестирование производительности.COMAQA.BY
 
Alexander Andelkovic. Comaqa Spring 2018. Using Artificial Intelligence to Te...
Alexander Andelkovic. Comaqa Spring 2018. Using Artificial Intelligence to Te...Alexander Andelkovic. Comaqa Spring 2018. Using Artificial Intelligence to Te...
Alexander Andelkovic. Comaqa Spring 2018. Using Artificial Intelligence to Te...COMAQA.BY
 
Моя роль в конфликте
Моя роль в конфликтеМоя роль в конфликте
Моя роль в конфликтеCOMAQA.BY
 
Организация приемочного тестирования силами матерых тестировщиков
Организация приемочного тестирования силами матерых тестировщиковОрганизация приемочного тестирования силами матерых тестировщиков
Организация приемочного тестирования силами матерых тестировщиковCOMAQA.BY
 
Развитие или смерть
Развитие или смертьРазвитие или смерть
Развитие или смертьCOMAQA.BY
 
Системный взгляд на параллельный запуск Selenium тестов
Системный взгляд на параллельный запуск Selenium тестовСистемный взгляд на параллельный запуск Selenium тестов
Системный взгляд на параллельный запуск Selenium тестовCOMAQA.BY
 
Эффективная работа с рутинными задачами
Эффективная работа с рутинными задачамиЭффективная работа с рутинными задачами
Эффективная работа с рутинными задачамиCOMAQA.BY
 
Как стать синьором
Как стать синьоромКак стать синьором
Как стать синьоромCOMAQA.BY
 
Open your mind for OpenSource
Open your mind for OpenSourceOpen your mind for OpenSource
Open your mind for OpenSourceCOMAQA.BY
 
JDI 2.0. Not only UI testing
JDI 2.0. Not only UI testingJDI 2.0. Not only UI testing
JDI 2.0. Not only UI testingCOMAQA.BY
 
Out of box page object design pattern, java
Out of box page object design pattern, javaOut of box page object design pattern, java
Out of box page object design pattern, javaCOMAQA.BY
 

More from COMAQA.BY (20)

Тестирование аналогов инсталлируемых приложений (Android Instant Apps, Progre...
Тестирование аналогов инсталлируемых приложений (Android Instant Apps, Progre...Тестирование аналогов инсталлируемых приложений (Android Instant Apps, Progre...
Тестирование аналогов инсталлируемых приложений (Android Instant Apps, Progre...
 
Anton semenchenko. Comaqa Spring 2018. Nine circles of hell. Antipatterns in ...
Anton semenchenko. Comaqa Spring 2018. Nine circles of hell. Antipatterns in ...Anton semenchenko. Comaqa Spring 2018. Nine circles of hell. Antipatterns in ...
Anton semenchenko. Comaqa Spring 2018. Nine circles of hell. Antipatterns in ...
 
Vivien Ibironke Ibiyemi. Comaqa Spring 2018. Enhance your Testing Skills With...
Vivien Ibironke Ibiyemi. Comaqa Spring 2018. Enhance your Testing Skills With...Vivien Ibironke Ibiyemi. Comaqa Spring 2018. Enhance your Testing Skills With...
Vivien Ibironke Ibiyemi. Comaqa Spring 2018. Enhance your Testing Skills With...
 
Roman Soroka. Comaqa Spring 2018. Глобальный обзор процесса QA и его важность
Roman Soroka. Comaqa Spring 2018. Глобальный обзор процесса QA и его важностьRoman Soroka. Comaqa Spring 2018. Глобальный обзор процесса QA и его важность
Roman Soroka. Comaqa Spring 2018. Глобальный обзор процесса QA и его важность
 
Roman Iovlev. Comaqa Spring 2018. Архитектура Open Source решений для автомат...
Roman Iovlev. Comaqa Spring 2018. Архитектура Open Source решений для автомат...Roman Iovlev. Comaqa Spring 2018. Архитектура Open Source решений для автомат...
Roman Iovlev. Comaqa Spring 2018. Архитектура Open Source решений для автомат...
 
Vladimir Polyakov. Comaqa Spring 2018. Особенности тестирования ПО в предметн...
Vladimir Polyakov. Comaqa Spring 2018. Особенности тестирования ПО в предметн...Vladimir Polyakov. Comaqa Spring 2018. Особенности тестирования ПО в предметн...
Vladimir Polyakov. Comaqa Spring 2018. Особенности тестирования ПО в предметн...
 
Kimmo Hakala. Comaqa Spring 2018. Challenges and good QA practices in softwar...
Kimmo Hakala. Comaqa Spring 2018. Challenges and good QA practices in softwar...Kimmo Hakala. Comaqa Spring 2018. Challenges and good QA practices in softwar...
Kimmo Hakala. Comaqa Spring 2018. Challenges and good QA practices in softwar...
 
Дмитрий Лемешко. Comaqa Spring 2018. Continuous mobile automation in build pi...
Дмитрий Лемешко. Comaqa Spring 2018. Continuous mobile automation in build pi...Дмитрий Лемешко. Comaqa Spring 2018. Continuous mobile automation in build pi...
Дмитрий Лемешко. Comaqa Spring 2018. Continuous mobile automation in build pi...
 
Ivan Katunov. Comaqa Spring 2018. Test Design and Automation for Rest API.
Ivan Katunov. Comaqa Spring 2018. Test Design and Automation for Rest API.Ivan Katunov. Comaqa Spring 2018. Test Design and Automation for Rest API.
Ivan Katunov. Comaqa Spring 2018. Test Design and Automation for Rest API.
 
Vadim Zubovich. Comaqa Spring 2018. Красивое тестирование производительности.
Vadim Zubovich. Comaqa Spring 2018. Красивое тестирование производительности.Vadim Zubovich. Comaqa Spring 2018. Красивое тестирование производительности.
Vadim Zubovich. Comaqa Spring 2018. Красивое тестирование производительности.
 
Alexander Andelkovic. Comaqa Spring 2018. Using Artificial Intelligence to Te...
Alexander Andelkovic. Comaqa Spring 2018. Using Artificial Intelligence to Te...Alexander Andelkovic. Comaqa Spring 2018. Using Artificial Intelligence to Te...
Alexander Andelkovic. Comaqa Spring 2018. Using Artificial Intelligence to Te...
 
Моя роль в конфликте
Моя роль в конфликтеМоя роль в конфликте
Моя роль в конфликте
 
Организация приемочного тестирования силами матерых тестировщиков
Организация приемочного тестирования силами матерых тестировщиковОрганизация приемочного тестирования силами матерых тестировщиков
Организация приемочного тестирования силами матерых тестировщиков
 
Развитие или смерть
Развитие или смертьРазвитие или смерть
Развитие или смерть
 
Системный взгляд на параллельный запуск Selenium тестов
Системный взгляд на параллельный запуск Selenium тестовСистемный взгляд на параллельный запуск Selenium тестов
Системный взгляд на параллельный запуск Selenium тестов
 
Эффективная работа с рутинными задачами
Эффективная работа с рутинными задачамиЭффективная работа с рутинными задачами
Эффективная работа с рутинными задачами
 
Как стать синьором
Как стать синьоромКак стать синьором
Как стать синьором
 
Open your mind for OpenSource
Open your mind for OpenSourceOpen your mind for OpenSource
Open your mind for OpenSource
 
JDI 2.0. Not only UI testing
JDI 2.0. Not only UI testingJDI 2.0. Not only UI testing
JDI 2.0. Not only UI testing
 
Out of box page object design pattern, java
Out of box page object design pattern, javaOut of box page object design pattern, java
Out of box page object design pattern, java
 

Готовим Docker для Автоматизации Тестирования

  • 1. Готовим Docker для Автоматизации Тестирования Вадим Гущенсков
  • 2. Немного о себе ● Lead software test automation engineer в Epam Systems ● 7 лет в IT и автоматизации тестирования ● Основной фокус работы - автоматизация Web-сервисов
  • 3. Немного о проекте Microservices Cutting-edge technologies ● Микро-сервис архитектура ● Заказчик технологически подкован, любит строить инфраструктуру используя последние технологии. ● Весь деплой, куда-бы то ни было происходит в Docker-контейнерах
  • 4. Преимущества Docker ● Нетребовательность к окружению ● Относительная лёгкость установки ● Docker-образ - это полноценный артефакт Developer VM Local Server Data Center
  • 5. Основные вызовы ● Каким образом встроить тестирование в проект? ● Можем ли мы как-то улучшить тестирование с помощью Docker? ● Как запускать наши тесты и использовать одну и ту же версию тестов для соответствующей версии web-сервиса. ● Как мониторить продакшен?
  • 8. Стратегия тестирования Ввести следующие уровни тестирования: ● Изолированные функциональные тесты ● Тесты верификации установки - Deployment verification test (DVT) ● Периодические “Canary”- тесты
  • 9. Подготовка артефактов ● Executable uber-jar с тестами размещается в docker-образе с web- сервисом ● В артефакт добавляется entrypoint.sh, который понимает команды ‘start’ и ‘test’ ● Артефакт отправляется в собственный docker registry
  • 10. Isolated testing ● Мы используем Docker- in-Docker ● У нас есть образ со всеми зависимостями, которые тяжело замокать: базы данных (Postgres, MongoDB, Redis), очередь сообщений (RabbitMQ) и другие зависимости. ● Контейнером с изолированной средой можно делиться
  • 12. Deployment Verification Tests ● Ноды последовательно выводятся из кластера, на них запускается деплой и тесты ● Тесты запускаются на той же ноде, что и сервис в отдельном docker-контейнере ● Можно ограничивать ресурсы тестов флагами: --memory, -- cpu-shares
  • 13. Canary testing ● Всегда можно зайти на любую продакш-ноду и запустить self-test ● При помощи Google Cloud Platform и Amazon Web Services можно арендовать сервера в разных зонах и запускать тесты по cron