일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- 쓰레드
- 운영체제
- 자료구조
- Direct12
- 동적계획법
- 컨디션 변수
- DirectX12
- 알고리즘
- DirectX 12
- 멀티쓰레드
- 락
- I/O장치
- 백준
- 그리디 알고리즘
- 파일시스템 구현
- 멀티프로세서
- OS
- 타입 객체
- 스케줄링
- 병행성
- 디자인패턴
- 프로그래머스
- directx
- 영속성
- 다이나믹 프로그래밍
- 다이나믹프로그래밍
- 렌더링 파이프라인
- codility
- 그리디알고리즘
- 병행성 관련 오류
- Today
- Total
기록공간
2-2-2장. 단위 모듈 테스트 - B 본문
단위 모듈 테스트 개요
단위 모듈 테스트는 프로그램의 단위 기능을 구현하는 모듈이 정해진 기능을 정확히 수행하는지 검증하는 것이다.
-
단위 모듈 테스트는 단위 테스트(Unit Test)라고도 하며, 화이트 박스 테스트와 블랙박스 테스트 기법을 사용한다.
-
단위 모듈 테스트를 수행하기 위해서는 모듈을 단독적으로 실행할 수 있는 환경과 테스트에 필요한 데이터가 모두 준비되어야 한다.
-
모듈의 통합 이후에는 오랜 시간 추적해야 발견할 수 있는 에러들도 단위 모듈 테스트를 수행하면 쉽게 발견하고 수정할 수 있다.
-
단위 모듈 테스트의 기준은 단위 모듈에 대한 코드이므로 시스템 수준의 오류는 잡아낼 수 없다.
테스트 케이스(Test Case)
테스트 케이스는 구현된 소프트웨어가 사용자의 요구사항을 정확하게 준수했는지를 확인하기 위해 설계된 입력 값, 실행 조건, 기대 결과 등으로 구성된 테스트 항목에 대한 명세서로, 명세 기반 테스트의 설계 산출물에 해당한다.
-
단위 모듈을 테스트하기 전에 테스트에 필요한 입력 데이터, 테스트 조건, 예상 결과 등을 모아 테스트 케이스를 만든다.
-
테스트 케이스를 이용하지 않고 수행하는 직관적인 테스트는 특정 요소에 대한 검증이 누락되거나 불필요한 검증의 반복으로 인해 인력과 시간을 낭비할 수 있다.
-
ISO/IEC/IEEE 29119-3 표준에 따른 테스트 케이스의 구성 요소는 다음과 같다.
-
식별자(Identifier) : 항목 식별자, 일련번호
-
테스트 항목(Test Item) : 테스트 대상(모듈 또는 기능)
-
입력 명세(Input Specification) : 입력 데이터 또는 테스트 조건
-
출력 명세(Output Specification) : 테스트 케이스 수행 시 예상되는 출력 결과
-
환경 설정(Environmental Needs) : 필요한 하드웨어나 소프트웨어의 환경
-
특수 절차 요구(Special Procedure Requirement) : 테스트 케이스 수행 시 특별히 요구되는 절차
-
의존성 기술(Inter-case Dependencies) : 테스트 케이스 간의 의존성
-
테스트 프로세스
테스트 프로세스는 테스트를 위해 수행하는 모든 작업들이 테스트의 목적과 조건을 달성할 수 있도록 도와주는 과정이다.
테스트 프로세스 5단계
-
계획 및 제어 단계 : 테스트 목표를 달성하기 위한 계획을 수립하고, 계획대로 진행되도록 제어하는 단계
-
분석 및 설계 단계 : 테스트 목표를 구체화하여 테스트 시나리오와 테스트 케이스를 작성하는 단계
-
구현 및 실현 단계 : 효율적인 테스트 수행을 위해 테스트 케이스들을 조합하여 테스트 프로시저에 명세하는 단계, 모듈의 환경에 적합한 단위 테스트 도구를 이용하여 테스트를 수행하는 단계
-
평가 단계 : 테스트가 계획과 목표에 맞게 수행되었는지 평가하고 기록하는 단계
-
완료 단계 : 이후의 테스트를 위한 참고 자료 및 테스트 수행에 대한 증거 자료로 활용하기 위해 수행 과정과 산출물을 기록 및 저장하는 단계
'자격증공부 > 정보처리기사_필기' 카테고리의 다른 글
2-3-1장. 소프트웨어 패키징 - B (0) | 2020.09.05 |
---|---|
2-2-3장. 개발 지원 도구 - B (0) | 2020.09.04 |
2-2-1장. 단위 모듈 구현 - C (0) | 2020.09.04 |
2-1-4장. 절차형 SQL - B (0) | 2020.09.04 |
2-1-3장. 데이터 입출력 - B (0) | 2020.09.04 |