В моей Spring загрузки приложения доступ к моему Hibernate сессии, как показано в этом ответе: https://stackoverflow.com/a/33881946/272180Spring Ботинок: Использование Hibernate Session в модульном тесте
Теперь я хочу, чтобы получить доступ к Hibernate сессии в модульном тесте.
Как настроить источник данных и получить доступ к сеансу Hibernate в модульном тесте приложения Spring Boot?
Когда я просто Autowire его, я получаю org.hibernate.HibernateException: Could not obtain transaction-synchronized Session for current thread.
и автоматического связывания используя @Service
работает безупречно.
Мой класс модульного тестирования выглядит следующим образом атм:
@RunWith(SpringJUnit4ClassRunner.class)
@SpringApplicationConfiguration(classes = App.class)
@WebIntegrationTest
public class WebTest {
@Autowired
private SessionFactory sessionFactory;
@Autowired
private UserService userService;
@Test
public void testService() {
final List<User> users = userService.getUsers();
// do something with users
// ...
}
}
App.class
относится к классу с основным методом, который используется для запуска приложения Spring загрузки.