Учет утверждений динамического ответа в SoapUI

#web-services #soapui

#веб-сервисы #soapui

Вопрос:

Я был назначен для автоматического тестирования веб-служб для достижения следующего в SoapUI:

В принципе, перед отправкой soap-сообщения каждый раз его следует заменять другими тестовыми данными. Например, если у меня есть 10 тестовых примеров, то следующий тестовый пример перезаписывает предыдущий. Тестовый пример 10 — это то, что я наконец вижу на экране. Преимущество заключается в том, что вам нужно только одно сообщение с запросом soap, и через цикл сообщение soap заполняется новыми тестовыми данными (управляемыми данными) и отправляется.

Проблема, которую я рассматриваю сейчас, заключается в том, что для каждого ответного сообщения применяются разные утверждения. Невозможно иметь глобальные утверждения для всех ответных сообщений, потому что каждое ответное сообщение выглядит по-разному, и поэтому необходимо иметь конкретные утверждения для каждого ответного сообщения. Проблема в том, что я не могу сохранить утверждения для конкретного ответного сообщения, потому что оно затем перезаписывается следующим ответным сообщением. Ответное сообщение от testcase 10 — это то, что я, наконец, вижу на экране. У вас проблема

Возможное решение:

  • Сохраните каждое ответное сообщение отдельно.
  • Получите каждое ответное сообщение отдельно и введите соответствующие утверждения для этого конкретного ответа.

Есть ли у кого-нибудь элегантное решение или опыт работы с вышеуказанным, и оно хорошо работает?

Комментарии:

1. Пожалуйста, укажите более описательный заголовок.

Ответ №1:

Вы можете решить эту проблему с помощью источника данных и цикла обработки данных.

В источнике данных укажите ваши входные значения И ваше утверждение.

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

 - Test Steps
--  Data Source
--  SOAP Request
---- Assertion
--  Data Loop
  

Комментарии:

1. BlackGaff, большое спасибо за объяснение и решение, которое вы описали. Я буду реализовывать это в моем testscript 😉

2. Рад, что смог помочь. Пожалуйста, подумайте о том, чтобы пометить это как «отвеченный», если это работает для вас.