DB 테스트를 위해 dbsetup을 사용하고 있습니다. 문제는 @Transactional 어노테이션으로 테스트 케이스 (또는 메소드)에 주석을다는 항상 작동했던 aproach를 사용하여 각 테스트 후에 데이터를 롤백 할 수 없다는 것입니다. dbsetup이 DataSource 자체를 사용하여 Spring이 데이터베이스에 수행중인 작업을 추적 할 수 없기 때문에 이러한 상황이 발생할 것으로 생각됩니다. 이 작품을 만드는 방법?수동으로 데이터 소스와 상호 작용 한 후 테스트에서 변경 사항을 롤백 하시겠습니까?
0
A
답변
1
DbSetup은 어떤 식 으로든 Spring과 딱 맞지 않습니다. 데이터 소스에서 JDBC 연결을 가져오고 완료되면 커밋합니다.
DbSetup을 사용하는 권장 방법은 각 테스트 전에 테이블을 지우고 채우는 것입니다. DbSetupTracker를 사용하면 테스트에서 이전 테스트와 동일한 데이터를 사용하고 이전 테스트에서 데이터를 변경하지 않은 경우 쓸모없는 재생산을 피할 수 있습니다. 이 내용은 user guide에 설명되어 있습니다.