[Mockito] 스프링의 @Autowired에 대응하는 테스트 방법
개발 2011. 12. 23. 15:33336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.
스프링을 사용하여 Bean들을 자동주입하게 되면서 setter도 만들지 않게 되고,
또한 주입(Inject)할 Bean들이 많아 지만 테스트코드 만드는게 귀찮아 진다.
@Autowired에 대응해서 테스트시에는 Mockito의 방법이 있다.
1. 테스트 런너를 MockitoJUnitRunner 를 사용한다.
@RunWith(MockitoJUnitRunner.class)
public class PojoServiceTest {
..
}
public class PojoServiceTest {
..
}
2. 자동 주입받는 객체에 @InjectMock 어노테이션을 붙인다.
// 이런부분을
@Autowired
private MyService myService;
// 이렇게
@InjectMocks
private MyService myService = new MyService();
// 이렇게
@InjectMocks
private MyService myService = new MyService();
3. Mock 되는 대상은 @Mock 어노테이션을 붙인다.
@InjectMocks
private MyService myService = new MyService();
@Mock
private MyDao myDao;
private MyService myService = new MyService();
@Mock
private MyDao myDao;
Mockito를 사용하여 간단하게 테스트할수 있다.