Сбой теста MUnit — невозможно обработать событие, так как «FileConnector» остановлен

Я реализую Munit для потока, который включает Mule Requester. Этот запрашивающий мулов собирал файл.

Итак, когда я запускаю класс Java как Junit, он выдает исключение: «Не удается выполнить операцию с FileConnector, поскольку он остановлен».

Выражение, используемое в запросчике мулов,

файл://${путь}?connector=FileConnector

Я также определил глобальный файловый коннектор.

Пожалуйста, дайте мне знать, как решить эту проблему.

Спасибо.


person Shivchetan Sambaragimath    schedule 15.07.2016    source источник


Ответы (2)


Все соединители и входящие конечные точки по умолчанию отключены в MUnit. Это сделано для предотвращения случайной обработки/генерации потоком реальных данных. (Некоторые пояснения здесь). По той же причине File Connector также отключен.

Чтобы включить соединители, вам нужно переопределить метод в вашем MUnitsuite, как показано ниже:

@Override
protected boolean haveToMockMuleConnectors() {
    return false;
}

Для XML Munit см. эту для включения коннекторов.

Примечание. Это активирует и запустит все соединители, которые вы используете в тестируемых конфигурациях мулов. Если у вас есть коннектор SMTP, коннектор DB, коннектор MQ и т. д., все они будут запущены во время теста, поэтому используйте их с осторожностью.

person Manik Magar    schedule 18.07.2016
comment
Спасибо Маник .. Теперь это работает. Однако почему это не может работать, когда мы отключаем mock . Потому что в идеале рекомендуется не подключаться к конечным точкам. - person Shivchetan Sambaragimath; 28.07.2016
comment
Да, рекомендуется имитировать входящие конечные точки и соединители, и они имитируются по умолчанию. Если вы держите фиктивные коннекторы, вам также потребуется имитировать любые исходящие конечные точки. Поэтому, если вы имитируете mulerequester:request, который запускает ваш файловый коннектор, вам не нужно разблокировать коннекторы. - person Manik Magar; 28.07.2016

Проверьте, определен ли коннектор файлов в файлах, загруженных вами для munit.

 <spring:beans>
    <spring:import resource="classpath:api.xml"/>
 </spring:beans>

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

person tortoise    schedule 15.07.2016