일부 DAO를 사용하여 데이터베이스에 대한 호출을 수행하는 메소드가 있습니다.mock 또는 dbunit을 사용하여 데이터베이스에 액세스하는 방법을 테스트해야합니까?
모의 메커니즘을 사용하여 데이터베이스를 관리하지 않아야하고 모든 DAO 메소드를 모의 해 주어야합니까? 아니면 dbunit (또는 일부 동급)를 사용하여 메모리에 데이터베이스 (예 : hsqldb)를 초기화하여 테스트해야합니까?
각 방법 (mock 대 dbunit)에 대한 장단점이 있습니까?
나는 동의한다, 속도는 근본적이다. 모든 단위 테스트를 실행하는 데 몇 초가 걸리면 개발자가 실행하지 않을 이유를 찾을 수 있습니다. ... 그것은 동일한 테스트 프레임 워크를 사용하여 end-to-end 테스트를 작성할 수 없다는 것을 의미하지는 않습니다. 그러나 실제 데이터베이스 (또는 실제 서버)를 치는 모든 것은 수용 테스트로 이동해야합니다. –