在 TestSuite 中模拟 AMQPTemplate

Mock AMQPTemplate inside TestSuite

我是 运行 JUnits 作为 TestSuite。 JUnit class 之一用于测试将消息发布到 RabbitMQ 的代码。

我应该模拟代码以将消息发布到 MQ。我怎样才能做到这一点?

是否可以简单地更改配置 xml 本身中的 RabbitTemplate 配置?

Class 具有业务逻辑:

public class SomeClassImpl implements SomeClass {


@Autowired
@Qualifier("amqpTemplate")
private AmqpTemplate amqpTemplate;

public void someMethod(){
    ...
    amqpTemplate.convertAndSend(exactTargetQueue, etMsg);
    ...
}

<bean id="rabbitAdmin" class="org.mockito.Mockito" factory-method="mock">
    <constructor-arg value="org.springframework.amqp.rabbit.core.RabbitTemplate"/>
</bean>