java - @JmsListener 的 JUnit 测试

标签 java junit jms spring-jms mockrunner

我是 Spring JMS 的新手,我正在尝试测试使用 @JMSListener 的方法。
您知道如何使用mockrunner或您知道的其他工具来测试它吗?

我已经看过这个示例,但我不确定这是否适用于我的情况。 https://dzone.com/articles/mockrunner-jms-spring-unit

@Service
public class MyJMSService {

    @JmsListener(destination = "jms/queuename")
    public void processMessage(ObjectMessage msg) throws JMSException {
        //do stuff
    }
}

最佳答案

我没有使用过mockrunner。但它应该类似于其他模拟框架,例如 eazymock 或 mockito。您需要做的是模拟所有外部调用。在 @BeforeMethod 内的测试类中,您可以创建并初始化模拟。然后,您将模拟记录在测试方法中,表示如果使用这些参数调用此方法,则只需返回此方法即可。然后验证模拟交互。希望这可以帮助。快乐编码。

关于java - @JmsListener 的 JUnit 测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41240531/

相关文章:

java - ActiveMQ 消费者/生产者连接监听器

jms - Kafka 生产者不在 Windows 中工作

java - 如何删除tomcat jsp中的 session ?

java - 如何检查单元测试(全类)所需的时间

java - 模拟 Socket.getOutputStream() 用于测试 Java

java - 如何配置用于 junit 测试的 eclipse 类路径?

java - Linux 中运行的线程数有最大限制吗?

java.lang.IllegalArgumentException : No more parsing elements

java - java中的同步是否保护修改后的类字段?

java - 如何使用java程序设置IBM MQ的消息ID