在TestNGTests上获取org.hibernate.LazyInitializationException

时间:2016-10-23 11:15:52

标签: java hibernate spring-boot spring-data-jpa testng

我从TestNG TestClases获取了org.hibernate.LazyInitializationException。

我使用AbstractTransactionalTestNGSpringContextTests扩展了我的TestNG测试类。我的一个测试对象有一个Lazy集合,这导致了这个异常。

是否有任何方法可以在测试期间急切地初始化所有集合。如果我正常执行(无测试),则不会发生此异常。

1 个答案:

答案 0 :(得分:1)

如果您直接调用DAO /服务/控制器(没有MockMVC或RestAssured),则只需将测试标记为@Transactional。这样,事务和Hibernate Session将在测试之前打开,并在测试之后关闭。

否则它将由您的服务打开并由服务关闭。