Модуль 1 — Введение в автотестирование

В этом модуле мы разберём базу, без которой невозможно нормально двигаться в Automation QA: что такое автотесты, где они действительно приносят пользу, какие задачи решает AQA-инженер и какое окружение нужно подготовить перед началом практики.

Уроки

  1. 01.01 - Введение в автоматизированное тестирование — что такое автотесты, их типы, чем занимается AQA-инженер и как зайти в профессию.
  2. 01.02 - Знакомство с AQA — цели и границы автоматизации, плюсы и минусы, роли в команде и ключевые инструменты.
  3. 01.03 - Подготовка окружения — интерпретатор Python, IDE PyCharm и виртуальное окружение: готовим рабочее место.

Ключевая тема

Модуль вводит вас в профессию Python Automation QA Engineer: объясняет, зачем нужна автоматизация тестирования, какие типы автотестов существуют, чем занимается AQA-инженер, какие инструменты использует и как подготовить рабочее окружение для обучения.

Основные мысли

  1. Автоматизированное тестирование — это проверка программного продукта с помощью кода и специализированных инструментов, а не вручную.
  2. Автотесты нужны для ускорения проверок, снижения ручной рутины, повышения повторяемости и уменьшения влияния человеческого фактора.
  3. Автоматизация особенно полезна для регрессии, API-проверок, стабильных повторяемых сценариев и задач, которые нужно запускать часто.
  4. Не всё стоит автоматизировать: исследовательское тестирование и нестабильный UI чаще выгоднее проверять вручную или автоматизировать позже.
  5. AQA-инженер по уровню навыков близок к разработчику: он пишет код, работает с инфраструктурой, анализирует результаты прогонов, поддерживает тесты и взаимодействует с командой.
  6. В курсе используются ключевые инструменты: Python, PyTest, Requests, Playwright, частично упоминаются Selenium, Jenkins, Docker, Git, CI/CD, Allure.
  7. Для старта нужно подготовить окружение: установить Python-интерпретатор, IDE PyCharm, настроить интерпретатор проекта и виртуальное окружение.
  8. Практика в модуле направлена на структурирование тем и первичное закрепление материала через Miro/схему.

Важные термины

  • AQA / Automation QA
  • Автоматизированное тестирование
  • Ручное тестирование
  • UI-тесты
  • API-тесты
  • Unit-тесты
  • Regression tests / регрессионные тесты
  • CI/CD
  • PyTest
  • Requests
  • Playwright
  • Selenium
  • Python interpreter
  • IDE
  • PyCharm
  • Virtual environment / .venv

Причинно-следственные связи

  • Чем чаще команда меняет код, тем выше риск сломать уже работающую функциональность.
  • Чем больше повторяющихся проверок, тем выгоднее их автоматизировать.
  • Чем стабильнее слой приложения, тем проще и дешевле поддерживать автотесты.
  • API-тесты обычно быстрее и стабильнее UI-тестов, поэтому их логично автоматизировать раньше.
  • Автотесты не избавляют от работы полностью: после изменений в продукте их нужно поддерживать, обновлять и анализировать.

Курс: Python AQA