我们有一个spring应用程序,它可以发布和侦听远程应用程序服务器上的队列。我的发布者和监听器是基于spring的,在我们自己的应用服务器中监听。
我们的测试环境存在的问题之一是另一个应用程序。服务器没有运行,所以当我们的测试应用程序启动并尝试注入JmsTemplate及其 connectionFactory 时,它会爆炸,因为它不是有效的连接而且我们的整个应用程序都无法加载。这让我们小组中与JMS无关的其他开发人员感到悲痛。他们想要做的只是运行并测试他们的代码,但 JmsTemplate connectionFactory已关闭。
有没有人有任何关于启用spring的建议忽略一些不良注射,这将允许我们的应用程序正常启动? 感谢
答案 0 :(得分:0)
我相信这可以通过定义单独的弹簧配置文件然后在启动应用程序时将其作为参数传递到测试环境中来实现。你可以模拟或忽略任何bean。 示例
import org.springframework.context.annotation.Profile;
@Profile("test")
public class AppConfigTest {
....
....
}
JVM参数/系统属性
-Dspring.profiles.active=test