Хранить ответное сообщение мыла в Citrus Framework - PullRequest
0 голосов
/ 17 октября 2018

Доброе утро:

Я новичок в Citrus Framework.На самом деле я работаю в тестовом примере, который использует один мыльный веб-сервис.Я могу отправить сообщение с запросом из XML-файла, и мне нужно сохранить ответное сообщение с сервера в другом XML-файле для отслеживания и аудита.

Я пробую некоторые опции, но все еще не работаю.Можете ли вы помочь мне с возможными решениями этого требования?

Мой тест выглядит следующим образом:

public class DummyIT extends TestNGCitrusTestDesigner {


@Autowired
private WebServiceClient DummyClient;

@Test
@CitrusTest
public void dummyTest() {

    soap()
        .client(DummyClient)
        .send()
        .messageType(MessageType.XML)
        .charset("UTF-8")
        .contentType("text/xml")
        .payload(new ClassPathResource("templates/DummyRequest.xml"));

    soap()
        .client(DummyClient)
        .receive()
        .schemaValidation(false);
}

Я использую Citrus Framework версии 2.7.2.

Спасибоза вашу помощь.

1 Ответ

0 голосов
/ 18 октября 2018

Вы можете добавить прослушиватель теста трассировки сообщений в контекст приложения Spring.Этот слушатель вызывается со всеми входящими и / или исходящими сообщениями.С помощью пользовательской реализации вы можете записать содержимое сообщения в виде файла во внешнюю папку.

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

Вы можете добавить прослушиватель по умолчанию в контекст приложения в виде компонента:

@Bean
public MessageTracingTestListener tracingTestListener() {
    return new MessageTracingTestListener();
}

После этого вы должны увидеть .msgs файлы в папке target/citrus-logs/trace/messages, содержащие все обмененные входящие и исходящие сообщения.

Вот реализация по умолчанию: https://github.com/citrusframework/citrus/blob/master/modules/citrus-core/src/main/java/com/consol/citrus/report/MessageTracingTestListener.java

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...