如何在单元测试中构建javax.jms.TextMessage?
How to construct a javax.jms.TextMessage in unit tests?
在单元测试中从字符串构造 TextMessage 的最佳方法是什么?
我只看到 Session#createTextMessage(String),但这需要一个需要一些设置的会话。
另一种方法是模拟 TextMessage,但我认为避免模拟数据对象是一种很好的做法。
尝试使用构造函数来实现您的经纪人 TextMessage
。
例如,如果您使用 ActiveMQ,您可以通过默认构造函数创建一个新的 ActiveMQTextMessage
对象,并使用 setText
setter 来设置负载。
参见 http://activemq.apache.org/maven/apidocs/org/apache/activemq/command/ActiveMQTextMessage.html。
如果代理库不在您的单元测试的类路径中,您也不打算包含它,那么您将别无选择,只能模拟它,因为 JMS API 不带有默认实现。
在这种情况下使用模拟是完全有效和合理的。
在单元测试中从字符串构造 TextMessage 的最佳方法是什么?
我只看到 Session#createTextMessage(String),但这需要一个需要一些设置的会话。
另一种方法是模拟 TextMessage,但我认为避免模拟数据对象是一种很好的做法。
尝试使用构造函数来实现您的经纪人 TextMessage
。
例如,如果您使用 ActiveMQ,您可以通过默认构造函数创建一个新的 ActiveMQTextMessage
对象,并使用 setText
setter 来设置负载。
参见 http://activemq.apache.org/maven/apidocs/org/apache/activemq/command/ActiveMQTextMessage.html。
如果代理库不在您的单元测试的类路径中,您也不打算包含它,那么您将别无选择,只能模拟它,因为 JMS API 不带有默认实现。
在这种情况下使用模拟是完全有效和合理的。