프로그램 실행 여부에 따른 테스트
- 정적 테스트
- 프로그램을 실행하지 않고 명세서나 소스 코드를 대상으로 분석하는 테스트
- 워크 스루, 인스펙션, 코드 검사
- 동적 테스트
- 프로그램을 실행하여 오류를 찾는 테스트
- 화이트박스 테스트, 블랙박스 테스트
테스트 기반에 따른 테스트
- 명세 기반 테스트
- 사용자의 요구사항에 대한 명세를 빠짐없이 테스트 케이스로 만들어 구현하고 있는지 확인하는 테스트
- 동등 분할, 경계값 분석(블랙박스 테스트)
- 구조 기반 테스트
- 소프트웨어 내부의 논리 흐름에 따라 테스트 케이스를 작성하고 확인하는 테스트
- 구문 기반, 결정 기반, 조건 기반(화이트박스 테스트)
- 경험 기반 테스트
- 테스터의 경험을 기반으로 수행하는 테스트
- 에러 추정, 체크 리스트, 탐색적 테스팅
- 명구경
시각에 따른 테스트
- 검증(Verification) 테스트
- 개발자의 시각에서 제품의 생산 과정을 테스트하는 것
- 단위 테스트, 통합 테스트, 시스템 테스트
- 확인(Validation) 테스트
- 사용자의 시각에서 생산된 제품의 결과를 테스트 하는 것
- 인수 테스트(알파 테스트, 베타 테스트)
목적에 따른 테스트
- 회복(Recovery) 테스트
- 시스템에 여러가지 결함을 주어 실패하도록 한 후 올바르게 복구되는지를 확인하는 테스트
- 안전(Security) 테스트
- 시스템 보호 도구가 불법적인 침입으로부터 시스템을 보호할 수 있는지를 확인하는 테스트
- 강도(Stress)테스트
- 과부하 시에도 소프트웨어가 정상적으로 실행되는지 확인하는 테스트
- 성능(Performance) 테스트
- 실시간 성능이나 전체적인 효율성을 진단하는 테스트
- 구조(Structure) 테스트
- 소프트웨어 내부의 논리적인 경로, 소스 코드의 복잡도 등을 평가하는 테스트
- 회귀(Regression) 테스트
- 소프트웨어의 변경 또는 수정된 코드에 새로운 결함이 없음을 확인하는 테스트
- 병행(Paralle) 테스트
- 변경된 소프트웨어와 기존 소프트웨어에 동일한 데이터를 입력하여 결과를 비교하는 테스트
- 회안강성 구회병
테스트 커버리지 유형
- 구분 커버리지
- 프로그램 내 모든 문장을 적어도 한 번 이상 실행하는 것을 기준으로 수행하는 테스트 커버리지
- 결정 커버리지
- 결정 조건 내 전체 조건식이 최소한 참/거짓 한 번의 값을 가지도록 측정하는 테스트 커버리지
- 조건 커버리지
- 전체 조건식 결과와 관계없이 각 개별 조건식이 참/거짓 한 번 모두 갖도록 개별 조건식을 조합하는 테스트 커버리지
- 조건/결정 커버리지
- 전체 조건식이 참/거짓 한 번씩 가지면서, 개별 조건식이 참/거짓 모두 한 번씩 갖도록 조합하는 테스트 커버리지
- 변경/조건 결정 커버리지
- 각 개별 조건식이 다른 개별 조건식의 영향을 받지 않고 전체 조건식의 결과에 독립적으로 영향을 주도록 함으로써 조건/결정 커버리지를 향상시킨 테스트 커버리지
- 다중 조건 커버리지
- 결정 조건 내 모든 개발 조건식의 모든 가능한 조합을 100% 보장하는 테스트 커버리지
- 구결조 조변다
출처: https://m.blog.naver.com/wook2124/222108534552