Ответ
SOAP (Simple Object Access Protocol) — это протокол для обмена структурированными сообщениями в веб-сервисах на основе XML. В отличие от REST, SOAP — это строгий стандарт с встроенными возможностями безопасности и транзакций.
Ключевые характеристики:
- Протокол: Работает поверх HTTP, SMTP, TCP.
- Формат данных: Только XML.
- Интерфейс: Описывается строгим контрактом WSDL (Web Services Description Language).
- Безопасность: Поддерживает семейство стандартов WS-* (WS-Security, WS-AtomicTransaction).
Пример SOAP-запроса (HTTP POST):
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<GetWeatherRequest xmlns="http://example.com/weather">
<City>London</City>
</GetWeatherRequest>
</soap:Body>
</soap:Envelope>
Основные аспекты тестирования SOAP:
- Валидация структуры: Проверка XML против XSD-схемы из WSDL.
- Тестирование операций: Вызов методов (operations), описанных в WSDL, с различными входными данными.
- Обработка ошибок: Проверка формата и содержания SOAP Fault.
- Инструменты: SoapUI, Postman (с raw XML), библиотеки вроде
zeepдля Python илиJAX-WSдля Java.