Какие уровни тестирования можно выполнять с помощью Postman?

«Какие уровни тестирования можно выполнять с помощью Postman?» — вопрос из категории API тестирование, который задают на 10% собеседований QA Тестировщик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

Postman — многофункциональный инструмент, поддерживающий несколько уровней тестирования API:

1. Интеграционное тестирование (основное назначение)

  • Проверка взаимодействия между сервисами
  • Валидация форматов запросов/ответов (JSON Schema)
  • Тестирование цепочек вызовов API
// Пример интеграционного теста в Postman
pm.test("Create user and verify response", () => {
    const response = pm.response.json();
    pm.expect(response.status).to.eql("active");

    // Сохраняем ID для следующего запроса
    pm.environment.set("userId", response.id);
});

// Следующий запрос в коллекции
pm.test("Get created user", () => {
    const user = pm.response.json();
    pm.expect(user.id).to.eql(pm.environment.get("userId"));
});

2. Контрактное тестирование

  • Валидация по OpenAPI/Swagger спецификациям
  • Проверка обязательных полей и типов данных

3. E2E-сценарии (системное тестирование)

  • Моделирование пользовательских потоков через API
  • Сквозные проверки с несколькими сервисами
  • Использование переменных окружения и данных

4. Нагрузочное тестирование (Postman Newman + мониторинг)

  • Запуск коллекций с разной интенсивностью
  • Анализ времени ответа и ошибок

5. Модульное тестирование эндпоинтов (ограниченно)

  • Проверка отдельных методов API
  • Изоляция тестов с моками через pm.sendRequest

Что Postman НЕ заменяет:

  • Юнит-тесты кода бизнес-логики
  • UI-тестирование интерфейсов
  • Нагрузочное тестирование в production-среде

Best practices:

  • Организация коллекций по функциональности
  • Использование environment variables
  • Автоматизация через Newman в CI/CD
  • Валидация JSON Schema для ответов