Найти тему

Использование SOAP UI для проверки работы веб-сервисов

Думаю что многие с подобными вещами уже работали. Но если есть коллеги у которых появилась необходимость разобраться с данным ПО. Данная статья будет для Вас.

В ходе работы в сфере 1С часто приходится сталкиваться с задачи по обменам/интеграциям как с другими ИБ так и внешними ресурсами. Но если создать веб-сервис и опубликовать его никаких проблем не составляет, то протестировать его самостоятельно не используя другую ИБ достаточно трудновато. Именно для таких целей и существует ПО SOAP UI.

SOAP UI - Это приложение для тестирования веб-сервисов сервис-ориентированных архитектур(SOAP) и передачи состояний представлений(REST).

Специфика SOAP — это формат обмена данными, всегда SOAP-XML, который представляет собой XML, включающий:

  • Envelope (конверт) – корневой элемент, который определяет сообщение и пространство имен, использованное в документе,
  • Header (заголовок) – содержит атрибуты сообщения, например: информация о безопасности или о сетевой маршрутизации,
  • —Body (тело) – содержит сообщение, которым обмениваются приложения,
  • Fault – необязательный элемент, который предоставляет информацию об ошибках, которые произошли при обработке сообщений. И запрос, и ответ должны соответствовать структуре SOAP.

Специфика REST — использование HTTP в качестве транспортного протокола. Он подразумевает наилучшее использование функций, предоставляемых HTTP — методы запросов, заголовки запросов, ответы, заголовки ответов и т. д.

В рамках веб-сервисов нам достаточно будет лишь SOAP.

Само приложение находится в бесплатном доступе и можно его скачать с официального сайта.

Перейдем непосредственно к инструкции.

Для примера будем использовать веб-сервис от ЦБР и получим курс валют на текущую дату: https://www.cbr.ru/DailyInfoWebServ/DailyInfo.asmx?WSDL (общедоступная ссылка)

Рисунок 1. Общий интерфейс программы
Рисунок 1. Общий интерфейс программы

Для начала нам необходимо создать SOAP запрос нажатием на одноименную кнопку в командной панели.

Рисунок 2. Окно добавление веб-сервиса
Рисунок 2. Окно добавление веб-сервиса

После нажатия откроется окно с рисунка 2 в поле "Intial WSDL" ввести ссылку на наш веб сервис. Название назначается автоматически, но мы можем его изменить. Далее нажимаем "ОК". Возможно понадобиться ввести учетные данные.

Рисунок 3. Добавленный веб-сервис
Рисунок 3. Добавленный веб-сервис

В случае успеха мы увидим слева подобную ветку где "DailyInfoSoap" это наш веб-сервис а всё что ниже него это функции имеющиеся у веб-сервиса. Для тестирования запроса нам необходимо выбрать нужную функцию и раскрыть ветку.

Рисунок 4. Выбор функции веб-сервиса
Рисунок 4. Выбор функции веб-сервиса

Мы выбрали функцию GetCursOnDate и открываем Request 1, это и есть наш запрос. Следом откроется окно с этим запросом который будет описан по принципу описанному выше (формат SOAP-XML). в тегах <web:GetCursOnDate> мы видим заголовок нашей функции, всё что в них и есть наши параметры которые мы должны отправлять в веб-сервис для обработки, в данном случая это только поле On_date которое является датой на которую мы получим наш курс валют.

Рисунок 5. Получение результата
Рисунок 5. Получение результата

Указав дату в нужном формате и отправив запрос мы получаем ответ в формате XML в которой мы видим название валют, страну, код валюты и курс.

Рисунок 6. Авторизация пользователя веб-сервиса
Рисунок 6. Авторизация пользователя веб-сервиса

Возможно вам придётся указать данные авторизации (зависит от настроек веб-сервиса). Сделать это можно выбрав "Request" и внимательно посмотреть во вкладку Properties

Вот как-то так я и пользуюсь данным приложением для проверки собственных веб-сервисом.

Пы.Сы. На право первооткрывателя не претендую. Надеюсь моя инструкция кому-то поможет