Можно ли тестировать SOAP API с помощью Postman?

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

Ответ

Да, Postman полностью поддерживает тестирование SOAP API. Хотя инструмент чаще ассоциируется с REST, он отлично справляется и с SOAP-запросами, которые основаны на XML.

Пошаговая инструкция для отправки SOAP-запроса:

  1. Метод и URL: Установите метод запроса на POST и укажите URL SOAP-сервиса (Endpoint).
  2. Заголовки (Headers): Добавьте обязательный заголовок:
    Content-Type: text/xml; charset=utf-8

    Также может потребоваться SOAPAction, если сервис его использует.

  3. Тело запроса (Body): Выберите вкладку Body, затем режим raw и тип XML. Вставьте полный SOAP-конверт.

Пример валидного SOAP-запроса в Postman:

POST https://www.example.com/soap-service
Headers:
  Content-Type: text/xml
  SOAPAction: "http://example.com/GetUserData"

Body (raw, XML):
<?xml version="1.0" encoding="UTF-8"?>
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
  <soap:Body>
    <GetUserData xmlns="http://example.com/">
      <userId>12345</userId>
    </GetUserData>
  </soap:Body>
</soap:Envelope>

Возможности тестирования:

  • Написание тестов (Tests): Вы можете писать скрипты на JavaScript на вкладке Tests для автоматической проверки ответа (статус-код, наличие определенных XML-элементов, значений).
  • Использование переменных: Параметры внутри XML можно вынести в переменные окружения или коллекции.
  • Импорт WSDL: Postman может импортировать WSDL-файл (Web Services Description Language) и сгенерировать коллекцию запросов на его основе.

Вывод: Postman — универсальный инструмент, подходящий для тестирования как REST, так и SOAP API, включая автоматизацию проверок.