Spring集成:使用嵌入式代理的自动化集成测试?

Spring集成:使用嵌入式代理的自动化集成测试?,spring,tdd,spring-integration,activemq,mqtt,Spring,Tdd,Spring Integration,Activemq,Mqtt,在某种程度上,比如说在内存中,是否可以启动一个代理,用于使用Spring集成MQTT执行自动化测试用例? 我曾尝试用ActiveMQ实现这一点(如下),但不知何故没有成功,也许有人有一个简短的工作示例?为这样的协议提供一些嵌入式代理不是Spring Integration(Spring Boot)的责任。如果有一个,我们可以考虑在这个问题上实现一个自动配置,类似于我们为嵌入式RDBMS、JMS和MunGDB所做的。你真的需要咨询一下 看起来我们可以在测试类中这样做: private static

在某种程度上,比如说在内存中,是否可以启动一个代理,用于使用Spring集成MQTT执行自动化测试用例?
我曾尝试用ActiveMQ实现这一点(如下),但不知何故没有成功,也许有人有一个简短的工作示例?

为这样的协议提供一些嵌入式代理不是Spring Integration(Spring Boot)的责任。如果有一个,我们可以考虑在这个问题上实现一个自动配置,类似于我们为嵌入式RDBMS、JMS和MunGDB所做的。你真的需要咨询一下

看起来我们可以在测试类中这样做:

private static BrokerService activeMQBroker;

...

@BeforeClass
public static void setup() throws Exception {
        activeMQBroker = new BrokerService();
        activeMQBroker.addConnector("mqtt://localhost:1883");
        activeMQBroker.setPersistent(false);
        activeMQBroker.setUseJmx(false);
        activeMQBroker.start();
}

我没有试过,但这正是我用来测试STOMP的方法。

太好了,谢谢你的回答。我试试看,然后尽快回来。是的,这个问题的动机,就像你说的,嵌入式数据库在哪里工作。。。检查。如果其他人需要它:您需要actriveMq broker、-client、-mqtt的依赖项。小心,版本匹配。我花了一些时间把每件事都安排妥当。