개발이 끝난 후 단위테스트 전 개발자가 기본적으로 해봐야할 테스트 목록 정리....
(제가 개인적으로 보려고 만든 목록입니다. 혹시 보시고 부족한 내용 보이시면 댓글 환영합니다.)
- 모든 조건들을 하나씩 넣어보면서 테스트한다.(데이터가 있는 조건 / 데이터가 없는 조건)
변해야하는 값이 계속 같게 나온다면 Mybatis local session cache 문제일수 있다.
- 마이바티스 $사용여부(클라이언트 단에서 넘어온 파라미터인경우 사용금지,... 왠만하면 사용금지.)
- 필수 조회조건 체크
- 필수 입력항목 체크
- 입력값 최대치 설정 체크 (입력항목은 항상 최대치로 입력해서 테스트한다. )
- 입력값 날짜,숫자등 범위 체크
- 숫자 ,문자등 타입별 입력가능 제한여부 체크
- 저장시 Validation 체크
- 그리드상에 날짜, 숫자등 포멧 및 자리수 표현 체크
- 그리드안에 컬럼별 좌우 정렬 체크 (보통 숫자 오른쪽, 문자 왼쪽, 코드나 이름등 크기가 같은 데이터는 중앙 정렬)
- 데이터 정렬 order by 체크
- 컴포넌트간 Tab index 체크
- Onload시 공통 기능 및 초기화 함수 호출 체크
- 사용자 및 메뉴 및 버튼별 권한 처리 체크
- 검색 및 저장 로직 후 초기화 및 알럿창 확인
- 다국어 체크
- MSSQL인 경우 width(nolock) 체크
- Nullable 컬럼체크
(부정조건 != <>, 사칙연산, group연산자들, 문자결합, 조인조건, order by등 체크
DB마다 null처리가 조금 차이가 있을수 있으니 꼭 union으로 임시데이터 만들어서 테스트할것)
with tb as (
select null col from dual
union all
select 1 col from dual
union all
select 2 col from dual
)
select count(col)
from tb
- 쿼리 속도 체크한다.
플랜체크 또는 preparedstatement 형태라 느린건지 판단필요.
DB tool에서도 변수형태로 실행해볼 필요있음.
- transaction 체크, 프레임워크마다 다르겠지만 Spring 기준으로 보통 service단
transaction 사용. 그에따른 개발 및 프로시저호출시 체크 필요.
프로시저에서 commit문이 들어가 있는 경우, 그리고 그 호출 이후에도 CRUD가 계속 이뤄진다면
service단 공통 단위 일괄 transaction이 무너진다.
- 사양서 비즈니스로직 체크
- 임시로 넘어간 TODO 체크
'IT > PJT' 카테고리의 다른 글
JSP 웹사이트 개발 (0) | 2022.02.17 |
---|---|
스프링 (0) | 2022.02.17 |
댓글