기본 콘텐츠로 건너뛰기

8월, 2013의 게시물 표시

스프링 테스트 컨텍스트 프레임워크

@RunWith(SpringJUnit4ClassRunner.class) @ContextConfiguration(locations = {"classpath:applicationContext-integration-test.xml"}) @TransactionConfiguration(transactionManager = "transactionManager", defaultRollback = true) @Transactional public class ...{} - 테스트 컨텍스트 프레임워크 JUnit은 테스트 메소드를 실행할 때마다 스프링 컨텍스트를 생성함 대신 스프링은 테스트가 사용하는 컨텍스트를 캐싱해서 하나의 컨텍스트를 공유할 수 있는 방법을 제공함 테스트에 테스트 컨텍스트 프레임워크를 적용하려면 테스트 클래스는 두 가지 어노테이션을 부여해야 함 1. @RunWith 어노테이션을 이용해서 JUnit 테스트를 실행 하는 Runner를 스프링이 제공하는 것으로 변경 2. 컨텍스트의 설정 파일을 지정(테스트 클래스 사이에서는 동일한 설정파일을 가진 테스트끼리 애플리케이션 컨텍스트를 공유) - 테스트의 @Transactional 테스트의 @Transactional은 강제롤백 옵션이 설정된 트랜잭션으로 만들어짐 트랜잭션 매니저로 'transactionManager' 이름의 빈을 사용(지정도 가능)