java - 在整个测试套件中加载一次 bean

标签 java spring hibernate junit

我有一个描述我的 session 工厂的 bean。我只想在整个测试套件中加载这个 bean 一次。我想知道,这可能吗?如果可能的话,我也想本地化到我的 context.xml 。我可以发布您想要的任何来源,只需询问即可。

提前致谢!

最佳答案

在 Spring 测试框架中,如果所有测试用例类都使用相同的 locations 属性,则在运行之间会保留上下文。在下面的示例中,context.xml 中定义的上下文将仅加载一次(在第一个测试用例之前),并将在 JVM 退出时关闭:

@ContextConfiguration(locations = "classpath:context.xml")
@Transactional
public class FooTest {
  //...
}

@ContextConfiguration(locations = "classpath:context.xml")
@Transactional
public class BarTest {
  //...
}

你不能只保留一个bean,但你可以加载整个上下文一次。看我的文章Speeding up Spring integration tests .

关于java - 在整个测试套件中加载一次 bean,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11352102/

相关文章:

java - Camel : define jms queue name from properites file

hibernate - Spring Hibernate SessionFactory

hibernate - Fetch Type LAZY 仍然导致 Eager 加载 Hibernate Spring 数据

java - 后续访问时抛出 Derby LockAcquisitionException

java - 如何让 Hibernate/Spring/JPA 自动更新新实体的 ID

java - 无法在服务器上查看上传的图像

Java 扩展泛型

javax.ejb.TransactionRolledbackLocalException(Glassfish 3 + JPA + EclipseLink)

java - 在 JRuby 中导入 java 类

spring - 带有Spring的RabbitMQ永远重新传递消息