定制代理没有在munit测试中运行

时间:2015-03-13 03:10:16

标签: java unit-testing mule

我有一个自定义代理,我试图通过创建一个简单的流并调用代理来测试自定义代理的代码,但由于某种原因,Munit似乎在运行我的流时没有调用自定义代理。这是自定义代理xml:

    <custom-agent name="createQueueAgent"
        class="my.company.package.QueueManageAgent">
        <spring:property name="queueName" value="queueName" />
        <spring:property name="dataSource" ref="dataSource" />
    </custom-agent>
    <flow name="dummyFlow">
        <logger message="this is a flow" level="INFO"/>
    </flow>

以下是我如何调用它(在扩展Functional MUnit Suite的类中)

    this.runFlow("dummyFlow",testEvent(""));

流程会运行,但代理程序永远不会被初始化。如果我只是在mule中运行它,这可以正常工作。我在这里错过了什么?我正在运行Munit / Mule 3.6(Munit是3.6.0-BETA1-SNAPSHOT

1 个答案:

答案 0 :(得分:2)

您可以对自定义代理类进行单元测试,但不能对它进行单元测试。代理商是您在进行Munit测试时无法使用的服务。

正如您从mule文档中了解的那样

&#34;代理是与Mule ESB关联或使用的服务,但不是Mule管理的组件。代理与其注册的Mule实例具有相同的生命周期,因此您可以在Mule实例启动或处置时初始化和销毁​​资源。&#34;