Spring Junit 테스트 Dao 와 Service

Srping 의 Junit 확장 메커니즘 관련 종 류 를 소개 합 니 다.         다운로드 패키지: spring - test. jar     패키지 org. spring from work. test 의 Spring 테스트 부모 클래스      1. AbstractSpringContextTests 류 [1], 이 모든 방법 은 proctected 입 니 다. 보통 이 종 류 를 사용 하지 않 고 하위 클래스 를 사용 합 니 다.             2. AbstractDependency InjectionSpringContextTests 류 [2]: 클래스 [1] 에 계승: Spring 의존 주입 기능 만 사용 하면 테스트 사례 를 계승 할 수 있 습 니 다.            3. AbstractTransactionalSpringContextTests 류 [3]: 클래스 [2] 에 계승 되 고 이러한 테스트 사례 를 계승 하여 spring 관리 업무 에서 진행 되 며 테스트 가 끝 난 후에 데이터 베이스 기록 에 아무런 영향 을 주지 않 습 니 다.데이터 베 이 스 를 조작 한 후에 데이터 베 이 스 를 자동 으로 스크롤 백 합 니 다. 그러면 테스트 가 환경 에 아무런 영향 을 주지 않 음 을 보장 합 니 다.        4. AbstractTransactional DataSource SpringContextTests: 클래스 에 계승 [3],  기능 이 더욱 강해 서 지구 층 구성 요 소 를 테스트 하고 소스 코드 를 보 는 데 사용 합 니 다.  "proctected JdbcTemplate jdbcTemplate;" 줄 이 있 습 니 다. 이 대상 을 통 해 데이터 베 이 스 를 직접 조작 할 수 있 는 JdbcTemplate 변 수 를 제공 합 니 다.       이 네 가 지 를 계승 한 테스트 클래스 는 모두 Test Case 성격 으로 Test Suite 에서 뛸 수 있다.         패키지 org. springframework. test. context. junit 4 의 Spring 테스트 부모 클래스 
    AbstractTransactionalJUnit 4 SpringContextTests 역시 spring 에서 관리 하 는 업무 에서 진행 되 지만 이 를 계승 하면 Test Suite 에서 뛸 수 없습니다. 
public class ArticleDataDaoTest extends AbstractTransactionalSpringContextTests {
 protected String[] getConfigLocations() {
  return new String[] { "classpath:applicationContext.xml" };
 }
 CfmCatalogArticleDataDAO cfmCatalogArticleDataDAO;
 CfmCatalogMediaDAO media;
 public CfmCatalogMediaDAO getMedia() {
  return media;
 }
 public void setMedia(CfmCatalogMediaDAO media) {
  this.media = media;
 }
 public CfmCatalogArticleDataDAO getCfmCatalogArticleDataDAO() {
  return cfmCatalogArticleDataDAO;
 }
 public void setCfmCatalogArticleDataDAO(
   CfmCatalogArticleDataDAO cfmCatalogArticleDataDAO) {
  this.cfmCatalogArticleDataDAO = cfmCatalogArticleDataDAO;
 }
 public void testTreeView() {
  List list = cfmCatalogArticleDataDAO.getFormalListByCataTypeIdAndName(
    null, "01", -1, -1);
  assertTrue(list.size() != 0);
 }
}

그리고 바로 실행 하면 됩 니 다. 이 과정 에서 관련 된 모든 사 무 는 RollBack 으로 돌아 갑 니 다. () 저 는 이 기능 이 좋다 고 생각 합 니 다.

좋은 웹페이지 즐겨찾기