Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- error
- c#코딩의기술실전편
- c#
- lazy loading
- 코드프로그래머스
- Config
- EFCore
- vscode
- 라도무스dvd
- .net
- 명시적외래키
- extraParams
- extjs
- Request
- minimalAPI
- JavaScript
- React
- 대전본식영상
- JSON
- intellij
- 상속
- LINQ
- scanner
- mac
- ORM
- ViewModel
- 스냅잘찍음
- dbContext
- Store
- 에스가든스냅
Archives
- Today
- Total
ejyoo's 개발 노트
[JUnit4] 단정문 및 어노테이션 정리 본문
JUnit API 문서
http://junit.sourceforge.net/javadoc/org/junit/Assert.html
단정문 종류
JUnit의 단정문 종류
assert : ~하길 기대한다 정도로 생각하면 됨.
배열 a와 b의 값 같은가?
assertArrayEquals(a,b)
객체 a와 b의 값 같은가?
assertEquals(a,b)
- 사용 예) SQL 쿼리 수행 시 가져온 결과값에 대한 비교를 할 수 있음.
@Test
public void selectMemberByIdSQL() {
String userId = "test3";
MemberVO memberVo = session.selectOne("Member-Mapper.selectMemberById",userId);
Assert.assertEquals("test3", memberVo.getUserId());
}
@Test
public void insertMemberByInfoSQL() {
MemberVO paramTypeMemberVo = new MemberVO();
paramTypeMemberVo.setUserId("test3");
paramTypeMemberVo.setUserPw("yej33585");
paramTypeMemberVo.setUserPhone("010-0000-0000");
paramTypeMemberVo.setUserEmail("test@test.com");
int cnt = session.insert("Member-Mapper.insertMemberByInfo", paramTypeMemberVo);
Assert.assertEquals(1, cnt);
}
객체 타입이 같은가?
assertSame(a,b)
조건이 참인가?
assertTrue(a)
- 사용 예) SQL 쿼리 수행 시 가져온 결과값이 List일 때, 이것의 Size가 0보다 큰지 비교할 수 있음.
@Test
public void selectMemberListSQL() {
MemberVO paramTypeMemberVo = new MemberVO();
paramTypeMemberVo.setUserNo(124);
paramTypeMemberVo.setUserId("test3");
paramTypeMemberVo.setUserPw("yej33585");
paramTypeMemberVo.setUserPhone("010-0000-0000");
paramTypeMemberVo.setUserEmail("test@test.com");
List<MemberVO> memberVoList = session.selectList("Member-Mapper.selectMemberList",paramTypeMemberVo);
Assert.assertTrue(memberVoList.size()>0);
}
null이 아니어야 한다.
assertNotNull(a)
JUnit Annotation
@Test 가 실행되기 전에 수행할 것
@Before
예) DB 연결정보 담은 세션 가져오기
@Before
public void openSession() {
session = factory.openSession();
}
@Test가 종료된 후 수행할 것
@After
예) DB 연결정보 담은 세션 반납하기
@After
public void closeSession() {
session.close();
}
@Test 실행 과정 시 맨 먼저 수행
@BeforeClass
public static void testBeforeClass() {
//수행코드 작성
}
@Test 실행 과정 시 맨 마지막 수행
@AfterClass
public static void testAfterClass() {
// test 실행 도중 마지막 작업 작성
}
테스트 - 일반
@Test
테스트 - 시간제한(5초 넘길 시 실패)
@Test(timeout=5000)
테스트 - Exception 동작여부
@Test(expected=RuntimeException.class)
'BackEnd > JUnit' 카테고리의 다른 글
[Junit4] 테스트 메소드 실행 순서 결정 (0) | 2021.05.19 |
---|---|
[JUnit4, MyBatis] 작성한 CRUD SQL 에 대해 테스트 코드 작성 (0) | 2021.05.19 |
[JUnit4] 사용법 -> 다른 블로그 링크 (0) | 2021.05.19 |
[JUnit4] 단위 테스트 라이브러리 추가 및 코드 (0) | 2021.05.18 |