Какие есть виды тестирования

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

Ответ

Функциональное тестирование — проверка соответствия ПО требованиям (юнит-тесты, интеграционные, системные).
Пример юнит-теста на Python (pytest):

def test_add():
    assert add(2, 3) == 5

Нефункциональное тестирование — оценка производительности, безопасности, UX (нагрузочное, стресс-тесты).

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

Дымовое тестирование (Smoke Testing) — быстрая проверка ключевых функций после сборки.

Тестирование совместимости — работа на разных ОС, браузерах, устройствах.

Приемочное тестирование (UAT) — финальная проверка заказчиком перед релизом.

Тестирование безопасности — поиск уязвимостей (SQL-инъекции, XSS).

Пример интеграционного теста (API):

def test_api_login():
    response = requests.post(API_URL, json={"user": "test", "pass": "123"})
    assert response.status_code == 200

Видео-ответы