Платформа Citrus: не проваленный тест по истечении времени ожидания - PullRequest
0 голосов
/ 24 сентября 2019

В моем тесте на цитрусовые я хочу проверить количество определенных сообщений в теме Кафки.

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

Вот что я пробовал:

receive(receiveMessageBuilder -> receiveMessageBuilder
                    .endpoint(topic)
                    .messageType(MessageType.PLAINTEXT)
                    .validator(new KafkaCounterMessageValidator(counter, 1, context.getVariable(FILENAME))))
            );

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

Однако проблема в том, что если я хочу, чтобы в теме было ровно N сообщений, мне нужно вызывать эту функцию как минимум N + 1 раз, что в большинстве случаев не пройдёт тест, потому что будетнет сообщений и **ActionTimeoutException** будет расти.

Есть ли способ отключить такое поведение или реализовать его другим способом?

...