Какие знаешь виды автотестов

«Какие знаешь виды автотестов» — вопрос из категории Контроль качества и отчётность, который задают на 23% собеседований Менеджер Проектов. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

Автотесты делятся на несколько основных видов:

  1. Unit-тесты – проверяют отдельные модули/функции в изоляции.
    Пример (Python):
    def test_add():
        assert add(2, 3) == 5
  1. Интеграционные тесты – проверяют взаимодействие компонентов (API, БД, сервисы).
    Пример: Тест API-эндпоинта с моками зависимостей.

  2. E2E-тесты – имитируют действия пользователя в UI (Selenium, Cypress).
    Пример: Авторизация на сайте через браузер.

  3. Регрессионные тесты – проверяют, что новые изменения не сломали старый функционал.

  4. Нагрузочные тесты (Performance) – оценивают работу системы под нагрузкой (JMeter, Locust).

  5. Контрактные тесты (Pact) – проверяют соглашения между сервисами (микросервисная архитектура).

Выбор зависит от целей: юнит-тесты – для быстрой обратной связи, E2E – для проверки сценариев целиком.