Найти в Дзене

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

В предыдущих частях мы разобрали, что такое SOAP, научились импортировать проект и создали первый тест и написали небольшие проверки, рассмотрели возможности манипуляций с данными. Сегодня разберём передачу данных из одного запроса сразу в другой. Порой нам предпочтительнее не сохранять значение переменной из тела ответа в свойстве, а сразу использовать его в следующем запросе. Рассмотрим, как это можно сделать. Создадим копию текущего шага, дадим ему имя, выберем проект, тест-сьюты и тест-кейсы. Поскольку их у нас немного, выбор будет однозначным. Переходим во второй запрос и ставим знак вопроса в нужное поле Теперь обратимся к разделу Property Transfer и создадим ещё одну передачу. В качестве источника данных будем использовать текст из поля «Ответ», а в качестве цели — поле «Запрос». Синтаксис довольно прост. В первом случае мы берём нужное слово, а во втором используем //*:text, что означает все элементы с таким окончанием. Давайте заменим наше слово на более понятное и допустим ош
Оглавление

В предыдущих частях мы разобрали, что такое SOAP, научились импортировать проект и создали первый тест и написали небольшие проверки, рассмотрели возможности манипуляций с данными. Сегодня разберём передачу данных из одного запроса сразу в другой.

Property Transfer in Request

Порой нам предпочтительнее не сохранять значение переменной из тела ответа в свойстве, а сразу использовать его в следующем запросе. Рассмотрим, как это можно сделать.

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

-2

Переходим во второй запрос и ставим знак вопроса в нужное поле

-3

Теперь обратимся к разделу Property Transfer и создадим ещё одну передачу. В качестве источника данных будем использовать текст из поля «Ответ», а в качестве цели — поле «Запрос». Синтаксис довольно прост. В первом случае мы берём нужное слово, а во втором используем //*:text, что означает все элементы с таким окончанием.

-4

Давайте заменим наше слово на более понятное и допустим ошибку - Сабака

-5

Во втором запросе изменим проверки, так как тело ответа при слове без ошибки, будет другое

-6

Откроем наш Test Steps и запустим. Всё ок, последовательность тестов прошла успешно.

-7

Несколько TestCase

Тестирование подразумевает, не только позитивные проверки, но и негативные. В SoapUI это можно разделить для удобства. Переименуем наш тест кейс

-8

И создадим такой же в этом Тест Сьюте, только изменим проверки

-9

К примеру мы можем ввести символы и увидеть, что наш сервис ничего не выведет

-10

Давайте добавим соответствующую проверку на отсутствие элемента. Переходим в Assertion - нажимаем плюсик и выбираем Not Contains

-11

У нас верное слово в ответе отображается в теге word - его и указываем

-12

Запустим и проверим

Scripts SoapUI

Поскольку SoapUI поддерживает JavaScript, то в этом инструменте можно использовать все возможности этого языка. Например, если требуется вывести дату, то её можно указать непосредственно в теле запроса.

${=new Date().format("yyyy-MM-dd'T'HH:mm:ss")}

Нужен 16 значный Guid

${=java.util.UUID.randomUUID()}

В запросе это выглядит так

-13

Groovy Script

Вы также можете прописывать команды в Groovy Script. Например

context.userName = UUID.randomUUID().toString()
-14

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

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