JUnit 테스트에서 나는 이상하게 보일 수없는 문제가 있습니다. 나는 꽤 표준 구조 (DAO의, 서비스 clasess 등 ...)와 다중 모듈 자바 webapp 프로젝트가 있습니다. 이 프로젝트에서 필자는 사용자에게 필요한 항목과 함께 테스트 사용자를 삽입하는 추상화 된 설치 코드를 포함하는 '핵심'프로젝트를 가지고 있습니다 (이 경우 '엔터프라이즈'이므로 사용자는 엔터프라이즈에 속해야하며 강제 적용됩니다 기묘 몇 가지 테스트를 실행하고 사용자가 있기 때문에 삽입 할 수 없습니다 불평 곳 데이터베이스 예외를 발생하지JUnit 테스트가 실패했습니다 - 방금 삽입 된 데이터가 누락되었다고 불평합니다
- 을 시작하는 위치를 여기
가 상당히 지금까지 간단하지만) 데이터베이스 레벨에 엔터프라이즈가 존재하지 않습니다. 하지만 방금 앞선 코드에서 엔터프라이즈를 만들었습니다! 그리고 기업 삽입에 오류가 없었습니다.
- 낯선 사람이라면이 테스트 클래스가 자체적으로 실행되면 모든 것이 정상적으로 작동합니다. 테스트가 실패한 프로젝트의 일부로 실행될 때만입니다!
- 그리고 똑같은 추상화 된 코드가 실패한 코드보다 10 번의 테스트에 의해 실행되었습니다!
- 나는 일이있는 벽에 내 머리를 두드리는 된 정말 어떤 진전을하지 않은
바. 진단 할 때 제공해야 할 정보가 무엇인지 확신 할 수 없습니다. org.apache.commons.dbcp.BasicDataSource에서 org.springframework.jdbc.datasource.DriverManagerDataSource로 전환의 JUnit 4.4, 봄 2.5.6, iBatis를 2.3.0, PostgreSQL을 8.3 사용
- 문제를 변경했습니다. DriverManagerDataSource를 사용하면 테스트가 처음으로 작동하지만 갑자기 많은 양의 데이터가 데이터베이스에서 롤백되지 않습니다! 그것은 모든 것을 뒤에 남겨 둡니다. 내 문제를 해결하는 데 도움이 될 수있는 어떤 정보를 요청하십시오 이클립스 & 메이븐
를 통해 실행할 때 오류없이 모든
업데이트 : 최대 로깅을 설정했습니다. 실패한 테스트와 성공한 테스트 사이에는 약간의 차이가 있습니다. 차이점이 강조 표시됩니다. 오류가 나는 "만들기 [java.util.concurrent.ConcurrentHashMap]"라인의 수 다음 오류 처리 코드는이 하드입니다
오류가 발생했을 때 데이터베이스를 검사 할 수 있습니까? 실제로 기업 기록이 있습니까? – Yishai
당신은 DB 모델을 제공 해주십시오. – bragboy