[Software-testing] Docker: инструменты тестировщика [Арсений Бaтыpoв, Виталий Котов]

330 

Описание

Тестировщик всегда работает в условиях недостатка времени: беклог не уменьшается, релиз на носу, а протестировать нужно еще многое. Чтобы обеспечить качество продукта, нужно постоянно повышать эффективность собственной работы. Один из способов — освоить некоторые инструменты, облегчающие рутинные действия в тестировании.
Во время работы часто приходится долго настраивать окружение, так как работа программы часто от него зависит. Наиболее простой способ облегчить работу — использовать контейнеры 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 — для чего нужен и когда используется

Отзывы

Отзывов пока нет.

Только зарегистрированные клиенты, купившие данный товар, могут публиковать отзывы.