SpringNet에서 NHiberante (HibernateTemplate)를 사용하여 DAO를 구현했습니다.Spring.net + Nhibernate 통합 테스트 합격하지 않았을 때 합격
또한 'AbstractTransactionalDbProviderSpringContextTests'에서 확장되는 통합 테스트가 있습니다.
DI가 정상적으로 작동하며 모든 테스트가 통과하지만 가끔 이 아니어도 일 때도 통과합니다. 예를 들어
내 hbm.xml 파일과 같은 오류가있는 경우
:<many-to-many class="Confluence.Domain.User" column="THIS COLUMN DOES NOT EXIST"/>
:
<class name="Confluence.Domain.User" table="THIS TABLE DOES NOT EXIST">
테스트가 실패하지만,이 오류가 이와 같은 경우 테스트는 자동으로 버그를 숨 깁니다.
SetComplete()을 사용하여 테스트하고 변경 사항을 DB에서 확인하지만이 종류의 테스트에 대한 아이디어는 그렇게하지 않는 것이 좋습니다.
누구든지이 문제를 해결하는 방법을 알려 줄 수 있습니까?
대단히 감사합니다!
@Ben : 실제로 작동하는지 확인하기 위해 SQL 스크립트를 실행해야한다면 이런 종류의 스프링 테스트를 사용하면 어떤 이점이 있습니까?
는 당신이 봄 테스트 무슨 뜻인지 모르겠어요. 나는 봄 사용자 (나는 Castle Windsor를 선호한다)가 아니며 일반적으로 테스트 결과를 남겨 둡니다. 아마도 여기에서 새로운 질문을 할 수 있습니다. –
스프링 테스트에 의하면 저는 봄을 의미합니다. 테스트. 니트. 편의 추상 클래스 인 AbstractTransactionalDbProviderSpringContextTests이므로 [test]로 주석 된 각 메소드는 항상 롤백되는 트랜잭션 내에서 실행되므로 DB가 테스트에 의해 오염되지 않고 정리할 필요가 없습니다. –