"외부 컨테이너"테스트를 위해 유닛 테스팅 DAO 클래스에서 사용하는 EasyMock 및 튜토리얼/예제를 살펴 보았습니다. 그러나 나는 그들 중 대다수가 DAO 클래스를 조롱하면서 서비스 레이어를 테스트하는 것에 대해 이야기한다고 생각한다. 나는 다소 혼란 스럽다. DAO 레이어를 어떻게 테스트 할 것인가?DAO 유닛 테스팅
일부 사람들은 DB & EJB와 상호 작용하는 테스트가 실제로는 통합 테스트가 아니라 단위 테스트가 아니라는 것을 알고 있지만 SQL이 올바른지 (ORM이 없다고 가정) DAO가 자신의 올바른 데이터를 삽입/쿼리하는지 어떻게 알 수 있습니까? 실제 (실제 데이터베이스와 유사한 로컬 데이터베이스 읽기) 데이터베이스입니까?
DBUnit은 이러한 상황에 대한 해결책이라고 읽었습니다. 하지만 내 질문은 "외부 컨테이너"DBUnit 같은 프레임 워크를 사용하는 것입니다. DAO가 일부 EJB에 의존하는 경우, 트랜잭션을 처리하는 방법, 삽입에서 다른 테이블을 업데이트하는 트리거가있는 경우 어떻게 될까요?
이러한 종속성이있는 DAO 만 유닛 테스트하는 가장 좋은 방법은 무엇입니까?