我正在测试我的 Mule 流程,并希望将它们模块化以测试各个部分。以以下为例:
<flow name="in" doc:name="in">
<sftp:inbound-endpoint
connector-ref="sftp"
address="sftp://test:test@localhost:${sftp.port}/~/folder" autoDelete="false" doc:name="SFTP">
</sftp:inbound-endpoint>
<vm:outbound-endpoint path="out" />
</flow>
然后,我的 Mule 测试从 out VM 队列中请求消息,以测试文件是否被正确拾取等:
MuleMessage message = muleClient.request("vm://out", 10000L);
这是一个好习惯还是使用 FunctionalTestComponent 检查收到的事件会更好?
通过使用 vm 而不是 FunctionalTestComponent 我不需要更改我的流程来进行测试,这是一个优点。
但是,这样做,我不确定后果。我听说 flow-ref 是模块化流程的首选方式,但这不允许我在测试等中获取消息。任何建议或最佳实践表示赞赏。