1. 애프리케이션 테스트 케이스 작성
< 소프트웨어 테스트의 이해 >
- 소프트웨어 테스트 : 개발된 응용 애플리케이션이나 시스템이 사용자가 요구하는 기능과 성능, 사용성, 안전성 등을 만족하는지 확인하고, 노출되지 않은 숨어있는 소프트웨어의 결함을 찾아내는 활동
- 소프트웨어 테스트 필요성 : 오류 발견 / 오류 예방 / 품질 향상
- 소프트웨어 테스트의 기본 원칙 :
- 테스팅은 결함이 존재함을 밝히는 것
- 완벽한 테스팅은 불가능
- 테스팅은 초기에 시작
- 결함 집중
- 살충제 패러독스
- 테스팅은 정황에 의존
- 오류-부재의 궤변
- 소프트웨어 테스트 산출물 : 테스트 계획서 / 테스트 베이시스 / 테스트 케이스 / 테스트 슈트 / 테스트 시나리오 / 테스트 스크립트 / 테스트 결과서
< 소프트웨어 테스트 유형 >
1. 프로그램 실행 여부에 따른 분류
- 정적 테스트 / 동적 테스트
2. 테스트 기법에 따른 분류
화이트 박스 테스트 (구조 기반 테스트) |
- 프로그램 내부 구조와 동작을 검사하는 소프트웨어 테스트 - 구문(문장) 커버리지 / 결정(분기, 선택) 커버리지 / 조건 커버리지 / 조건,결정 커버리지 / 변경 조건,결정 커버리지 / 다중 조건 커버리지 / 기본 경로 커버리지 / 제어 흐름 테스트 / 데이터 흐름 테스트 |
블랙 박스 테스트 (명세 기반 테스트) |
- 프로그램 외부 사용자의 요구사항 명세를 보면서 수행하는 테스트 - 동등분할 테스트 / 경계값 분석 / 결정 테이블 / 상태 전이 테스트 / 유스케이스 테스트 / 분류 트리 테스트 / 페어와이즈 테스트 / 원인-결과 그래프 테스트 / 비교 테스트 |
3. 테스트 시각에 따른 분류
- 검증 / 확인
4. 테스트 목적에 따른 분류
- 회복 테스트 / 안전 테스트 / 성능 테스트 / 구조 테스트 / 회귀 테스트 / 병행 테스트
- 성능 테스트 : 부하 테스트 / 스트레스 테스트 / 스파이크 테스트 / 내구성 테스트
5. 테스트 종류에 따른 분류
- 명세 기반 테스트(블랙박스 테스트) / 구조 기반 테스트(화이트박스 테스트) / 경험 기반 테스트(블랙박스 테스트)
< 정적 테스트 >
- 리뷰 : 소프트웨어의 다양한 산출물에 존재하는 결함을 검출하거나 프로젝트의 진행 상황을 점검하기 위한 활동으로 전문가가 수행
- 리뷰의 유형 : 관리 리뷰 / 기술 리뷰 / 인스펙션 / 워크스루 / 감사
- 정적 분석 : 도구의 지원을 받아 정적 테스트를 수행하는 방법
< 동적 테스트 >
- 화이트박스 테스트 : 각 응용 프로그램의 내부 구조와 동작을 검사하는 소프트웨어 테스트
- 블랙박스 테스트 : 프로그램 외부 사용자의 요구사항 명세를 보면서 수행하는 테스트
- 경험기반 테스트 : 테스터의 경험을 토대로 한, 직관과 기술 능력을 기반으로 수행하는 테스트 기법
- 경험기반 테스트 유형 : 탐색적 테스트 / 오류 추정 / 체크리스트 / 특성 테스트
< 테스트 케이스 >
- 특정 요구사항에 준수하는 지를 확인하기 위해 개발된 입력값, 실행 조건, 예상된 결과의 집합
- 테스트 케이스 구성요소 : 식별자 / 테스트 항목 / 입력 명세 / 출력 명세 / 환경 정의 / 특수 절차 요구 / 의존성 기술
< 테스트 오라클 >
- 테스트 오라클 : 테스트의 결과가 참인지 거짓인지를 판단하기 위해 사전에 정의된 참값을 입력하여 비교하는 기법
- 테스트 오라클 종류 : 참 오라클 / 샘플링 오라클 / 휴리스틱 오라클 / 일관성 검사 오라클
2. 애플리케이션 테스트 시나리오 작성
< 테스트 레벨 >
- 테스트 레벨 : 함께 편성되고 관리되는 테스트 활동의 그룹
- 테스트 레벨 종류 : 단위 테스트 / 통합 테스트 / 시스템 테스트 / 인수 테스트
< 테스트 시나리오 >
- 테스트 시나리오 : 테스트 수행을 위한 여러 테스트 케이스의 집합으로서, 테스트 케이스의 동작 순서를 기술한 문서이며 테스트를 위한 절차를 명세한 문서
'8. 자격증 > 8-1. 정보처리기사' 카테고리의 다른 글
정처기 실기 11-1. 운영체제의 특징 / 11-2. 네트워크 기초 활용하기 (0) | 2021.10.18 |
---|---|
정처기 실기 10-2. 애플리케이션 통합 테스트 / 10-3. 애플리케이션 성능 분석 (0) | 2021.10.14 |
정처기 실기 9-1. 소프트웨어 개발 보안 설계 / 9-2. 소프트웨어 개발 보안 구현 (0) | 2021.10.13 |
정처기 실기 8-1. 개발환경 구축 / 8-2. 공통 모듈 구현 / 8-4. 배치 프로그램 구현 (0) | 2021.10.13 |
정처기 실기 7-3. 절차형 SQL 활용하기 / 7-4. 데이터 조작 프로시저 최적화 (0) | 2021.10.12 |