1. 애플리케이션 테스트 (B)
- 완벽한 테스트 불가능
- 결함 집중: 애플리케이션의 20%의 코드에서 80%의 결함이 발견된다고 하여 파레토 법칙을 적용하기도 한다
- 살충제 패러독스 (기출): 동일한 테스트 케이스로 테스트를 반복하면 더 이상 결함이 반복되지 않는다
- 테스팅은 정황 의존: 정황에 따라 테스트를 다르게 수행한다
- 오류-부재의 궤변: 소프트웨어의 결함을 모두 제거해도 사용자의 요구사항을 만족시키지 못하면 품질이 높다고 할 수 없다
2. 애플리케이션 테스트 분류 (B)
- 프로그램 실행 여부, 테스트 기반, 시각, 목적
- 프로그램 실행 여부에 따른 테스트: 정적 테스트(프로그램 실행 안함), 동적 테스트(프로그램 실행 함)
- 테스트 기반에 따른 테스트
- 명세 기반 테스트: 사용자 요구사항에 대한 명세를 테스트 케이스로 만들어 테스트
- 구조 기반 테스트: 내부 논리 흐름(구문, 결정, 조건)에 따라 테스트 케이스를 만들어 테스트
- 경험 기반 테스트: 유사 소프트웨어에 대한 테스터의 경험을 기반으로 테스트
- 시각에 따른 테스트
- 검증 테스트: 개발자의 시각에서 테스트
- 확인 테스트: 사용자의 시각에서 테스트
- 목적에 따른 테스트
- 회복 테스트: 여러 결함을 주어 실패하도록 한 후 복구되는지 확인
- 안전 테스트: 불법적 침입으로부터 보호하는지 확인
- 강도 테스트: 과도한 정보를 부과하여 과부화시에도 정상 실행 되는지 확인
- 성능 테스트: 실시간 성능이나 전체적인 효율성 테스트 (응답 시간, 처리량)
- 구조 테스트: 논리적 경로, 소스코드 복잡도 평가
- 회귀 테스트: 변경, 수정된 코드에 새로운 결함이 없는지 확인
- 병행 테스트: 변경된 소프트웨어와 기본 소프트웨어에 동일한 데이터를 입력하여 결과를 비교
3. 테스트 기법에 따른 애플리케이션 테스트 (A)
- 화이트박스 테스트: 모듈의 원시코드를 오픈시킨 상태에서 원시 코드의 논리적인 경로(구조)를 테스트하여 테스트 케이스를 설계하는 방법
- 설계된 절차에 초점을 둔 구조적 테스트
- 테스트 과정의 초기에 적용
- 모듈 안의 작동을 직접, 자세히 관찰
- 원시 코드(모듈)의 모든 문장을 한 번 이상 실행
- 제어 구조에 따라 선택, 반복, 등의 분기점 부분들을 수행함으로써 논리적 경로를 제어
- 화이트박스 테스트 종류
- 기초 경로 검사
- 대표적 방법
- 테스트 케이스 설계자가 절차적 설계의 논리적 복잡성을 측정할 수 있게 해주는 것
- 제어 구조 검사
- 조건 검사: 논리적 조건을 테스트
- 루프 검사: 반복 구조에 초점
- 데이터 흐름 검사: 변수의 정의와 변수 사용 위치에 초점
- 기초 경로 검사
- 화이트박스 테스트 검증 기준
- 문장 검증 기준: 소스 코드의 모든 구문이 한 번 이상 수행되도록 테스트 케이스 설계
- 분기 검증 기준: 모든 조건문
- 조건 검증 기준: 모든 조건문이 True/False인 경우
- 분기/조건 기준: 모든 조건문 + 각 조건문에 포함된 개별 조건식의 결과가 True,False 인 경우
- 블랙박스 테스트: 각 기능이 완전히 작동되는 것을 입증하는 테스트, 기능 테스트
- 구현된 기능 테스트
- 소프트웨어 인터페이스에서 실시
- 테스트 과정의 후반부에 적용
- 블랙박스 테스트의 종류
- 동치 분할 검사: 입력 자료에 초점
- 경계값 분석: 동치 분할 기법 보완하기 위해 나옴. 입력 자료의 중간값보다 경계값에 초점
- 원인-효과 그래프 검사: 입력 데이터간의 관계와 출력에 영향을 미치는 상황을 체계적으로 분석
- 오류 예측 검사: 경험, 감각으로 테스트
- 비교 검사: 여러 버전의 프로그램에 동일한 테스트 자료 제공하여 동일한 결과가 출력되는지 테스트
4. 개발 단계에 따른 애플리케이션 테스트 (A)
'IT > 정보처리기사실기 공부' 카테고리의 다른 글
실기 정리 노트 2 (0) | 2020.11.25 |
---|---|
실기 정리노트 1 (0) | 2020.11.24 |
[정보처리기사실기] 화면 설계 (0) | 2020.10.05 |
[정보처리기사실기] 서버 개발, 서버 개발 과정, 배치 프로그램 (0) | 2020.10.04 |
[정보처리기사실기] 개발 환경 구축, 모듈, 공통 모듈, DBMS 접속 (0) | 2020.10.04 |