본문 바로가기
728x90
반응형

테스트케이스3

Spring Boot Test Case 작성에 대한 생각 - Repository Test 테스트 케이스를 작성을 할때 내가 어렵게 생각했던것은 2가지 이다. 1. Mock 으로 테스트케이스를 작성할 것인가? 아니면 실제 데이터를 가지고 작성할 것인다. 2. 테스트용 DB를 따로 둬야 할까? 이 2가지가 항상 풀리지 않는 난제 같았다. 그런데 갑자기 뭔가 기준을 정해서 하면 되지 않을까 라는 생각이 들었다. 어떻게 보면 당연한 이야기 이긴 하지만. 테스트케이스를 작성하려는 클래스들의 역할에 생각해 보고 그에 맞는 테스트 케이스를 작성하면 되는 것이다. Spring Boot 프로젝트를 보면 테스트케이스를 작성하는 클래스들로 다음과 같은 것들을 꼽을 수 있다. 1. Repository 2. Service 3. Controller 4. RestApiController 그럼 우선 이번 글에서는 Rep.. 2021. 2. 17.
[SpringBoot] @Mock, @MockBean 차이가 뭘까? 테스트 케이스를 작성하다가 좀 헷갈리는게 있었다. @Mock, @MockBean 차이가 뭐지??? 쓰긴 하고 있는데 알고 써야 하지 않을까라는 의문이 들었다. 그래서 찾아봤다. 먼저 Mock 객체를 선언할 때에는 2가지 방법이 있다. 1. 첫번째 : mock() 을 이용해서 선언 1 2 3 4 5 6 7 8 9 10 11 12 @RunWith(MockitoJUnitRunner.class) public class UserServiceTest { @InjectMocks private UserService userService; UserRepository userRepository = mock(UserRepository.class); @Test public void findByEmail_test(){ when.. 2018. 4. 10.
[Spring]Controller Test 하기 테스트케이스를 만들어서 작업을 하면 소스코드가 수정될 경우 코드를 테스트 해보기가 참 수월하다. 그런데 이 테스트 케이스 작성하는게 생각보다 만만치는 않다. 실제 DB 를 읽어서 테스트를 해야 하는지. 아니면 Mock 객체를 정의를 해서 사용을 해야 하는지. 실제 DB 를 사용할 경우 저장된 data 가 변경이 되어서 구현했을 당시 테스트 케이스는 Pass였지만 나중에 빌드 시점에 테스트 케이스가 실행될 경우에 Fail 이 나면 어떻게 할것인지. 생각해보면 그냥 서비스 구현해서 화면 띄우고 버튼 눌러서 테스트 하는것이 더 편할지도 모른다는 생각이 들기도 한다. 작성할 때마나 서비스 테스트, repository테스트, 컨트롤러 테스트에 대해서 구글링 하면서 작성을 하다보니 뭔가 남는게 없는것 같아서 샘플을.. 2017. 6. 12.
728x90
반응형