Найти в Дзене

Тестирование в SoapUI. Часть 1.

В предыдущий статье мы разобрали, что такое SOAP запрос. Сегодня разберём популярный инструмент по его использованию - это SoapUI. В своё время я не до конца понимал, практическое использование данного инструмента. Поэтому сначала, расскажу общую информацию, а далее постараюсь объяснить что же мы делаем. Скачиваем SoapUI с сайта SoapUI.org. Нужно выбрать версию Open Source, она бесплатна, но обладает довольно широким набором возможностей. Устанавливаем и запускаем. Далее нужно создать новый проект. Нажимаем кнопку SOAP: В открывшемся окне необходимо указать название и путь к файлу WSDL. Этот файл может находиться на сервере, предоставляющем API, или быть расположенным на локальном диске. В данном примере мы будем использовать WSDL от Яндекс.Спеллера. - https://yandex.ru/dev/speller/doc/ru/concepts/api-overview Это наглядный пример использования SOAP. API включает два метода, которые позволяют проверять правописание в одном или нескольких фрагментах текста. Для SOAP нужна определённая с

В предыдущий статье мы разобрали, что такое SOAP запрос. Сегодня разберём популярный инструмент по его использованию - это SoapUI.

В своё время я не до конца понимал, практическое использование данного инструмента. Поэтому сначала, расскажу общую информацию, а далее постараюсь объяснить что же мы делаем.

Скачиваем SoapUI с сайта SoapUI.org. Нужно выбрать версию Open Source, она бесплатна, но обладает довольно широким набором возможностей.

Устанавливаем и запускаем.

Далее нужно создать новый проект. Нажимаем кнопку SOAP:

-2

В открывшемся окне необходимо указать название и путь к файлу WSDL. Этот файл может находиться на сервере, предоставляющем API, или быть расположенным на локальном диске. В данном примере мы будем использовать WSDL от Яндекс.Спеллера. - https://yandex.ru/dev/speller/doc/ru/concepts/api-overview

Это наглядный пример использования SOAP. API включает два метода, которые позволяют проверять правописание в одном или нескольких фрагментах текста.

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

Открываем страницу с описанием API и находим там ссылку на WSDL:

-3

Получается примерно так:

-4

Также можно включить опцию Create Requests. Тогда программа сразу сгенерирует шаблоны запросов для отправки на сервер.

После успешного создания шаблонов должно получиться следующее:

-5

Давайте оставим только SpellServiceSoap12, интерфейс SpellServiceSoap можно просто удалить. Открываем запрос checkText / Request1:

-6

У вас уже есть почти готовый запрос, осталось заполнить его данными. Данные, которые необходимо заменить, обозначены знаками вопроса. Это параметр lang и значение в теге spel:text. Теперь укажем язык ru и слово с ошибкой, например, жаргонизм «карова». Получится следующий запрос:

Отправляем его, получаем ответ:

-7

Описание полученного ответа смотрим в документации:

  • SpellResult — корневой элемент;
  • error — информация об ошибке (может быть несколько или может отсутствовать);
  • word — исходное слово;
  • s — подсказка (может быть несколько или может отсутствовать).

Элемент <error> содержит следующие атрибуты:

  • code — код ошибки, см. коды ошибок;
  • pos — позиция слова с ошибкой (отсчёт от 0);
  • row — номер строки (отсчёт от 0);
  • col — номер столбца (отсчёт от 0);

len — длина слова с ошибкой.

То есть мы использовали сервис яндекса, который исправляет нам слова. У этого сервиса есть строгий шаблон запроса и ответа. в документации вы всё можете прочитать. Что можно писать, что получаете в ответе и как это трактовать.

На проектах все аналогично. Например, вы используете запрос, вводите данные и ожидаете какой-либо ответ, который будет использоваться в дальнейшем. Ввели логин и пароль — получили код доступа.

Это сервис для общения с сервером: вы посылаете команды, он выполняет определенную функцию и высылает ответ. Все просто.

SoapUI используется для тестирования таких функций. Например, функция ввода логина и пароля и получения кода доступа встроена в код вашего проекта. С помощью SoapUI вы как раз и проверяете отдельную функцию вашего проекта.

Повторюсь, данный сервис используется редко, но знать как его тестировать вы должны.

Создание тестов в SoapUI

Итак, мы отправили запрос, получили ответ. Это базовые возможности SoapUI. А теперь попробуем создать тесты. Тесты отличаются от просто запросов в первую очередь тем, что в них есть валидация результата.

Сначала нужно создать специальный контейнер — TestSuite.

Грубо говоря это просто папка в вашей директории, в которой вы можете указывать переменные и объединять тесты. Об этом чуть позже поговорим.

Правой кнопкой кликаем по проекту и выбираем New TestSuite:

-8

Задаём название, кликаем ОК:

-9

Открывается окно редактирования тестового набора. Для создания нового тест-кейса можно кликнуть на зелёную галочку или добавить его через контекстное меню в левом списке:

-10
-11

Далее нажимаем на SOAP и даём название

-12

Так как мы к себе добавили методы Яндекса, мы их можем использовать в своих тестах.

-13

Далее можно добавить сразу пару проверок на то, что пришёл ответ SOAP и он соответствует WSDL, и нажать ОК:

-14
-15

Пока научились добавлять тесты и проверять ответ. Далее мы углубимся в эту тему.

Если у вас есть вопросы или вы просто хотите стать частью команды тестировщиков, то переходи в ТГ канал, где можем пообщаться с единомышленниками и найти много интересных и полезных знаний!Также если вам нужна индивидуальная консультация, менторство и помощь в создании проекта пишите в ТГ канал!

Обучение тестированию