반응형
테스트 실행 : 한 개의 데이터만 집어 넣기
- 경로 위치
BdMapperTest.java
@Test, @DisplayName 어노테이션 사용
package com.th.hmmerorng.mapper;
import static org.junit.jupiter.api.Assertions.assertEquals;
import org.junit.jupiter.api.DisplayName;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import com.th.hmmerorng.vo.BdVO;
import lombok.extern.slf4j.Slf4j;
@Slf4j
@SpringBootTest //boot의 편리성
public class BdMapperTest {
@Autowired
private BdMapper bdMapper;
//테이블에 데이터가 없으니, insert 먼저 테스트
@Test //서버 실행 없이 Junit(테스트 프레임워크)으로 구동 가능
@DisplayName("입력 테스트")
void insTest() {
BdVO bdVO = new BdVO();
bdVO.setBdTitle("테스트용");
bdVO.setBdCont("컴퍼니 회사");
bdVO.setBdFurl("http://pimg.daara.co.kr/kidd/photo/2016/12/30/thumbs/thumb_520390_1483079064_25.jpg");
int cnt = bdMapper.insBd(bdVO);
assertEquals(1, cnt); //cnt값이 1이 나오면 성공(pass), 아님 실패
}
}
- 실행 방법
1. 오른쪽 마우스 클릭
2. Run As > JUnit Test 클릭
여러 개의 데이터만 집어 넣기
BdMapperTest.java
기존의 파일에 메소드 추가
package com.th.hmmerorng.mapper;
import static org.junit.jupiter.api.Assertions.assertEquals;
import java.util.Iterator;
import org.junit.jupiter.api.DisplayName;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import com.th.hmmerorng.vo.BdVO;
import lombok.extern.slf4j.Slf4j;
@Slf4j
@SpringBootTest //boot의 편리성
public class BdMapperTest {
@Autowired
private BdMapper bdMapper;
//여러개 데이터 넣기
@Test //서버 실행 없이 Junit(테스트 프레임워크)으로 구동 가능
@DisplayName("입력 테스트2")
void insMultiTest() {
BdVO bdVO;
int cnt = 0;
for(int i=1; i<=23; i++) {
bdVO = new BdVO();
bdVO.setBdTitle("테스트용 두번째");
bdVO.setBdCont("컴퍼니 회사");
bdVO.setBdFurl("http://pimg.daara.co.kr/kidd/photo/2016/12/30/thumbs/thumb_520390_1483079064_25.jpg");
cnt += bdMapper.insBd(bdVO);
}
assertEquals(23, cnt); //cnt값이 1이 나오면 성공(pass), 아님 실패
}
}
값 List로 가져오기
@Disabled
실행 시 원래 다 실행하기에 문제가 있을 수 있음
그렇기에 다 사용한 메소드의 상단에 작성해야 함.
BdMapperTest.java
기존의 파일에 메소드 추가
@Test
@DisplayName("getList 테스트")
void getListTest() {
List<BdVO> bdList = bdMapper.getBdList();
log.debug("확실히 확인하기 위해 찍음 : {}", bdList);
assertEquals(124, bdList.size()); //추가된 데이터 갯수가 124개라 이렇게 씀
}
값 1개 가져오기
BdMapperTest.java
기존의 파일에 메소드 추가
@Test
@DisplayName("bdVO 1개 가져오기")
void getBdTest() {
BdVO bdVO = new BdVO();
bdVO.setBdNum(78);
BdVO testVO = bdMapper.getBd(bdVO);
log.debug("확실히 확인 {}", testVO);
assertEquals("테스트용 두번째", testVO.getBdTitle()); //78번째 데이터 제목 넣어서 확인
}
데이터 수정하기
BdMapperTest.java
기존의 파일에 메소드 추가
@Test
@DisplayName("수정 테스트")
void upBdTest() {
BdVO bdVO = new BdVO();
bdVO.setBdNum(30); //이미 존재하는 번호를 1개 줘야함
bdVO.setBdTitle("수정 완료");
bdVO.setBdCont("수정 테스트 진행을 완료했습니다.");
int cnt = bdMapper.upBd(bdVO);
assertEquals(1, cnt);
}
최종 BdMapperTest.java 파일
package com.th.hmmerorng.mapper;
import static org.junit.jupiter.api.Assertions.assertEquals;
import java.util.Iterator;
import java.util.List;
import org.junit.jupiter.api.Disabled;
import org.junit.jupiter.api.DisplayName;
import org.junit.jupiter.api.Test;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.test.context.SpringBootTest;
import com.th.hmmerorng.vo.BdVO;
import lombok.extern.slf4j.Slf4j;
@Slf4j
@SpringBootTest //boot의 편리성
public class BdMapperTest {
@Autowired
private BdMapper bdMapper;
//테이블에 데이터가 없으니, insert 먼저 테스트
@Test //서버 실행 없이 Junit(테스트 프레임워크)으로 구동 가능
@Disabled
@DisplayName("입력 테스트")
void insTest() {
BdVO bdVO = new BdVO();
bdVO.setBdTitle("테스트용");
bdVO.setBdCont("컴퍼니 회사");
bdVO.setBdFurl("http://pimg.daara.co.kr/kidd/photo/2016/12/30/thumbs/thumb_520390_1483079064_25.jpg");
int cnt = bdMapper.insBd(bdVO);
assertEquals(1, cnt); //cnt값이 1이 나오면 성공(pass), 아님 실패
}
//여러개 데이터 넣기
@Test //서버 실행 없이 Junit(테스트 프레임워크)으로 구동 가능
@Disabled
@DisplayName("입력 테스트2")
void insMultiTest() {
BdVO bdVO;
int cnt = 0;
for(int i=1; i<=23; i++) {
bdVO = new BdVO();
bdVO.setBdTitle("테스트용 두번째");
bdVO.setBdCont("컴퍼니 회사" + i);
bdVO.setBdFurl("http://pimg.daara.co.kr/kidd/photo/2016/12/30/thumbs/thumb_520390_1483079064_25.jpg");
cnt += bdMapper.insBd(bdVO);
}
assertEquals(23, cnt); //cnt값이 1이 나오면 성공(pass), 아님 실패
}
@Test
@Disabled
@DisplayName("getList 테스트")
void getListTest() {
List<BdVO> bdList = bdMapper.getBdList();
log.debug("확실히 확인하기 위해 찍음 : {}", bdList);
assertEquals(124, bdList.size()); //추가된 데이터 갯수가 124개라 이렇게 씀
}
@Test
@Disabled
@DisplayName("bdVO 1개 가져오기")
void getBdTest() {
BdVO bdVO = new BdVO();
bdVO.setBdNum(78);
BdVO testVO = bdMapper.getBd(bdVO);
log.debug("확실히 확인 {}", testVO);
assertEquals("테스트용 두번째", testVO.getBdTitle()); //78번째 데이터 제목 넣어서 확인
}
@Test
@DisplayName("수정 테스트")
void upBdTest() {
BdVO bdVO = new BdVO();
bdVO.setBdNum(30); //이미 존재하는 번호를 1개 줘야함
bdVO.setBdTitle("수정 완료");
bdVO.setBdCont("수정 테스트 진행을 완료했습니다.");
int cnt = bdMapper.upBd(bdVO);
assertEquals(1, cnt);
}
}
반응형
'스프링 부트' 카테고리의 다른 글
[스프링 부트] 프로젝트 테스트3 (0) | 2024.07.12 |
---|---|
[스프링 부트] 프로젝트 생성 시 설정 및 진행1 (0) | 2024.07.11 |
[스프링 부트] jsp로 데이터 전달 (0) | 2024.07.10 |
[스프링 부트] lombok 파일, 로그 레벨, jsp 파일 사용을 위한 설정 (0) | 2024.07.10 |
[스프링 부트] 기본 페이지 설정 및 fetch (0) | 2024.07.10 |