MUnit 测试失败 - 无法处理事件,因为“FileConnector”已停止
MUnit test fails - Cannot process event as “FileConnector” is stopped
我正在为涉及 Mule Requester 的流程实施 Munit。这个骡子请求者会拿起一个文件。
因此,当我 运行 java class 作为 Junit 时,它会抛出异常,因为它已停止,无法在 FileConnector 上执行操作。
mule 请求者中使用的表达式是,
文件://${路径}?connector=FileConnector
我还定义了一个全局文件连接器。
请告诉我如何解决这个问题。
谢谢。
检查您为 munit 加载的文件中是否定义了文件连接器。
<spring:beans>
<spring:import resource="classpath:api.xml"/>
</spring:beans>
您也可以尝试模拟 mule 请求者。
MUnit 默认禁用所有连接器和入站端点。这是为了防止意外流出 processing/generating 真实数据。 (一些解释here)。出于同样的原因,文件连接器也被禁用。
要启用连接器,您需要重写 MUnitsuite 中的一个方法,如下所示 -
@Override
protected boolean haveToMockMuleConnectors() {
return false;
}
对于 XML Munit,请参阅 this 以启用连接器。
注意:这将启用并启动您在测试中的 mule-configs 中使用的所有连接器。如果你有SMTP连接器、DB连接器、MQ连接器等,测试时都会启动,慎用。
我正在为涉及 Mule Requester 的流程实施 Munit。这个骡子请求者会拿起一个文件。
因此,当我 运行 java class 作为 Junit 时,它会抛出异常,因为它已停止,无法在 FileConnector 上执行操作。
mule 请求者中使用的表达式是,
文件://${路径}?connector=FileConnector
我还定义了一个全局文件连接器。
请告诉我如何解决这个问题。
谢谢。
检查您为 munit 加载的文件中是否定义了文件连接器。
<spring:beans>
<spring:import resource="classpath:api.xml"/>
</spring:beans>
您也可以尝试模拟 mule 请求者。
MUnit 默认禁用所有连接器和入站端点。这是为了防止意外流出 processing/generating 真实数据。 (一些解释here)。出于同样的原因,文件连接器也被禁用。
要启用连接器,您需要重写 MUnitsuite 中的一个方法,如下所示 -
@Override
protected boolean haveToMockMuleConnectors() {
return false;
}
对于 XML Munit,请参阅 this 以启用连接器。
注意:这将启用并启动您在测试中的 mule-configs 中使用的所有连接器。如果你有SMTP连接器、DB连接器、MQ连接器等,测试时都会启动,慎用。