Скрытый текст. Доступен только зарегистрированным пользователям.
Тестировщик всегда работает в условиях недостатка времени: беклог не уменьшается, релиз на носу, а протестировать нужно еще многое. Чтобы обеспечить качество продукта, нужно постоянно повышать эффективность собственной работы. Один из способов - освоить некоторые инструменты, облегчающие рутинные действия в тестировании.
Во время работы часто приходится долго настраивать окружение, так как работа программы часто от него зависит. Наиболее простой способ облегчить работу — использовать контейнеры Docker. С их помощью вы можете запускать автотесты, тестовые сервера, различные версии программ и приложений на любой машине, где установлен Docker — и они будут работать совершенно одинаково. Это значительно облегчает поиск и локализацию ошибок, и сокращает время тестирования.
Естественно, умение работать со средствами контейнеризации пригодится практически любому тестировщику.
Курс «Docker: Инструменты тестировщика» создан для быстрого погружения в навыки, необходимые именно тестировщику. Теория дается в объеме, минимально необходимом для практики. Знания и навыки, приобретенные на этом курсе, помогут вам начать работать с Docker, получив только самые необходимые навыки: создание и настройка образов, налаживание сети, подключение внешних источников.
На этом курсе вы научитесь:
- Настраивать Docker на любой современной ОС
- Создавать, подключать и удалять контейнеры
- Делать собственные образы и тома
- Настраивать взаимодействие через бинды и тома
- Запускать в контейнерах тесты и программы
- Подключать контейнеры к сети
- Запускать автотесты внутри контейнеров
- Понимать разницу средств оркестрации Swarm и Kubernetes
Важно! Для курса потребуются определенные ОС, а также знания bash. Подробнее — в разделе “технические требования” и “требования к знаниям”
Спойлер: Программа:
Вступление - Что такое 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 - для чего нужен и когда используется