롤백 동작을 확인하기 위해 저장이 수행 된 후에 예외가 DAO에 적용되는 통합/단위 테스트를 작성하려고합니다. 내 생각은 봄 AOP 측면을 만들고 DAO의 'save'메소드에 @AfterReturning advice를 적용하는 것이었다.롤백 테스트 방법이 예상대로 작동합니까?
DAO는 @Transactional advice를 통해 이미 프록시 처리됩니다.
이것이 올바른 방법 인 것 같습니다.
지금까지 Spring ProxyFactory를 사용하여 - 단위 테스트에서 DAO를 프록시 처리하려고합니다.
예.
ProxyFactory pf = new ProxyFactory(new MyFaultInjectingAspect());
pf.setTarget(myDao);
MyDao proxiedDao = (BookmarkDao) pf.getProxy();
감사합니다.
는 참고 : 관련이 Is it ok to use DataSourceTransactionManager for ORM persistence instead of HibernateTransactionManager?이 비슷한 일을하려고하는 것 같습니다
트랜잭션이 실패하여 롤백이 발생하는 메커니즘이 있습니까? 테스트를 통해이 실패를 설정할 수있는 방법이 있습니까? –
질문은 그 메커니즘을 만드는 방법과 관련이 있습니다. 내가 실패를 일으키는 예외를 주입하는 측면을 사용하는 것을 고려 중입니다. –