Описание
Тестировщик всегда работает в условиях недостатка времени: беклог не уменьшается, релиз на носу, а протестировать нужно еще многое. Чтобы обеспечить качество продукта, нужно постоянно повышать эффективность собственной работы. Один из способов – освоить некоторые инструменты, облегчающие рутинные действия в тестировании.
Во время работы часто приходится долго настраивать окружение, так как работа программы часто от него зависит. Наиболее простой способ облегчить работу — использовать контейнеры Docker. С их помощью вы можете запускать автотесты, тестовые сервера, различные версии программ и приложений на любой машине, где установлен Docker — и они будут работать совершенно одинаково. Это значительно облегчает поиск и локализацию ошибок, и сокращает время тестирования.
Естественно, умение работать со средствами контейнеризации пригодится практически любому тестировщику.
На этом курсе вы научитесь:
- Настраивать Docker на любой современной ОС
- Создавать, подключать и удалять контейнеры
- Делать собственные образы и тома
- Настраивать взаимодействие через бинды и тома
- Запускать в контейнерах тесты и программы
- Подключать контейнеры к сети
- Запускать автотесты внутри контейнеров
- Понимать разницу средств оркестрации Swarm и Kubernetes
Программа:
Вступление
- Что такое Docker
- Отличие Docker от Virtual Machine
- Для чего используют Docker
- Почему для Windows и MacOS все не так?
Установка Docker
- Установка Docker на MacOS
- Установка Docker на Windows
- Установка Docker на Linux
Первые команды
- Версия Docker
- Помощник Docker
Контейнеры (containers)
- Что такое контейнер
- Как запустить контейнер
- Параметры команды run
- Запускаем контейнер с Ubuntu
- Detached контейнеры
- Attach запущенного контейнера
- Работа с несколькими контейнерами одновременно
- Работа с файлами внутри контейнера
Тома (volumes)
- Что такое том
- Создаем, подключаем и удаляем том
Монтирование (mount)
- Mount bind – подключение директории хост-системы
- Mount тома
- Пример запуска программы на Python с mount
- Readonly mode
- Тестирование программы на разных версиях языка программирования на примере Python
Образы (images)
- Что такое образ
- Качаем образ
- Выбираем версии
Docker Hub
- Регистрируемся на Docker Hub
- Авторизация Docker из терминала
- Создаем свой первый образ
- Заливаем свой образ на Docker Hub
Проксирование портов
- Запускаем Selenium Server через Docker
- Запускаем Selenium Server через Docker правильно
- Создаем Selenium-сессия на запущенном контейнере
Работа с автотестами внутри Docker
- Разбираемся с настройками docker network
- Разбираемся с тем, как устроены автотесты на примере Selenium-тестов
- Скачиваем исходники Selenium-тестов на Java
- Настраиваем запуск тестов в контейнере на примере Java и Maven
- Связываем контейнер Selenium и контейнер с запущенными тестами
- Работа с артефактами автотестов из контейнера
Dockerfile
- Что такое Dockerfile
- Основы синтаксиса
- Пример запуска простой программы на Python
- Пример создания образа с Selenium-тестами
Docker compose
- Что такое Docker compose
- Пример создания сервиса на примере Python-программы
- Запуск простого сервиса
- Запуск нескольких сервисов на примере Maven-образа с Selenium-тестами и образе Selenium Server
Обзор решений для оркестрации контейнеров (Docker Swarm и Kubernetes)
- Docker Swarm – для чего нужен и когда используется
- Kubernetes – для чего нужен и когда используется
Технические требования
Для выполнения заданий вам потребуется:
Windows 10 Pro / Mac OS Catalina / Ubuntu 18 или выше
Процессор i-серии (i3, i5, i7) или аналогичный от AMD
Минимум 4 GB RAM1 GB на жёстком диске
Отзывы
Отзывов пока нет.