import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.fileUpload; import static org.springframework.test.web.servlet.result.MockMvcResultHandlers.print; import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status; import java.io.File; import java.io.FileInputStream; import java.nio.charset.Charset; import org.junit.runner.RunWith; import org..
1. service @RunWith(SpringJUnit4ClassRunner.class) @ContextConfiguration(locations = "classpath:spring-context.xml") public class UserServiceImplTest { @Autowired private UserService service; /** * 测试根据用户名查询用户 */ @Test public void getByUsername() { User user = service.getByUsername("小明"); System.err.println(user); } /** * 测试列表查询用户 */ @Test public void list() { List list = service.list(); System...
1. 단위 테스트 작성에 편리한 패턴(given, when, then 패턴) 테스트할 준비를 하고(given), 테스트할 대상을 실행하고(when), 검증(then)하는 패턴은 BDD(Behavior Driven Development)에서 나온 패턴임 @Test public void plus_mockito(){ // given Random random = mock(Random.class); when(random.nextInt()). thenReturn(3); RandomCalculator randomCalculator = new RandomCalculator(random, new Calculator()); // when int result = randomCalculator.plus(2, 5); // th..

1. tdd 용어 정리 용어 설명 SUT 테스트 대상 시스템 DOC 테스트 대상 시스템에서 의존하는 컴포넌트 Test Double 테스트 시에 실제 객체를 대신 할 수 있는 객체를 의미 (Stub, Mock, Fake Object...) 2. 의존성 주입 //의존관계를 갖는 객체를 파라미터로 전달 예제 /* 날짜값 처리 유틸리티 */ //SUT 코드 public class DateHandler{ /* * 현재시간을 (yyyy-MM-dd)로 조회 * @param provider * @return */ public static String getCurrentTime(TimeProvider timeProvider) throws Exception { Calendar c = null; c = timeProvide..
1. JUnit assert 주요 메서드 assert 메서드 설명 assertArrayEquals(a, b); 배열 a와 b가 일치함을 확인 assertEquals(a, b); 객체 a와 b가 일치함을 확인 두 객체의 값이 같은가를 체크 assertSame(a, b); 객체 a와 b가 같은 객체임을 확인 두 객체가 동일한 객체인가(==연산) assertTrue(a); 조건 a가 참인지 확인 assertNotNull(a); 객체 a가 null이 아님을 확인 2. JUnit 어노테이션 설명 @Test(timeout = 5000) 5,000 밀리초가 지나면 테스트 실패 @Test(expected = Exception.class) Exception이 발생하지 않으면 실패 @ignore 테스트 건너 뜀 @Befo..
package com.test; import org.junit.runner.RunWith; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.ApplicationContext; import org.springframework.test.context.ContextConfiguration; import org.springframework.test.context.junit4.SpringJUnit4ClassRunner; @RunWith(SpringJUnit4ClassRunner.class) @ContextConfiguration(locations = { "classpath:/test-co..