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

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

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

最佳答案

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

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

10-04 14:00