1

我有一个 Mule 应用程序,我正在创建一些单元测试,包括一些 Mock Web 服务来测试某些功能。我正在使用测试 mule 流创建的模拟 Web 服务,因此我正在注册一个 HTTP 入站端点。

当我运行测试时,我遇到了失败,因为我的一个 Spring 对象无法加载,因为它无法访问我的模拟 Web 服务(Web 服务是动态加载的,所以在进行测试时,它解析为 localhost,否则它通常是外部服务)。我已经确保getConfigResources()在我加载我的 spring 上下文 bean 之前加载我的模拟 Web 服务流文件,但是我仍然得到错误。

有没有办法让 Mule/Spring 加载我的流文件并http:inbound-endpoint在我的 Spring bean 之前启动我?

4

1 回答 1

1

您可以尝试将depends-onSpring bean 上的属性设置为 Mule 流的名称,但我怀疑它会起作用,而且我不相信它无论如何都是可取的。

否则,我唯一能想到的就是您在@Before功能测试用例的方法中自己初始化 Spring bean 工厂。这将使您有机会通过模拟 HTTP 入站端点传递您正在使用的动态端口的值(假设您确实使用了动态端口,这是推荐的方法)。

于 2013-09-10T18:11:18.203 回答