소프트웨어 테스트: Difference between revisions
From CS Wiki
No edit summary |
(→동적 테스트) |
||
Line 128: | Line 128: | ||
==== 동적 테스트 ==== | ==== 동적 테스트 ==== | ||
{| class="wikitable" | |||
! 구분 | |||
! [[화이트박스 테스트]] | |||
! [[블랙박스 테스트]] | |||
|- | |||
| 개념 | |||
| | |||
* 프로그램 내부 로직을 참조하면서 모든 경로를 테스트 | |||
| | |||
* 프로그램 외부명세(기능, I/F)로부터 직접 테스트 (Data, I/O 위주 테스트) | |||
|- | |||
| 특징 | |||
| | |||
* 구조 테스트- Logic-Driven 테스트- 모듈 테스트 | |||
| | |||
* 기능 테스트- Data-Driven 테스트- I/O-Driven 테스트 | |||
|- | |||
| 테스트기법 | |||
| | |||
* 조건 검사 | |||
* 루프 검사 | |||
| | |||
* [[동치 분할 테스트]] | |||
* [[경계값 분석테스트|경계값 분석]] 등 | |||
|- | |||
| 관점 | |||
| | |||
* 개발자 관점 | |||
| | |||
* 사용자 관점 | |||
|} | |||
* [[블랙박스 테스트]] | * [[블랙박스 테스트]] | ||
* [[화이트박스 테스트]] | * [[화이트박스 테스트]] |
Revision as of 10:27, 2 November 2019
- Software Test
개요
정의
- 노출되지 않은 숨어있는 결함(Fault)을 찾기 위해 소프트웨어를 작동시키는 일련의 행위와 절차
- 오류 발견을 목적으로 프로그램을 실행하여 품질을 평가하는 과정
- 개발된 소프트웨어의 결함과 문제를 식별하고 품질을 평가하며 품질을 개선하기 위한 일련의 활동
- 일반적으로 테스트 케이스에 따라 SW를 동적으로 실행시켜 예상결과치와 비교 분석
- SW의 동작과 성능, 안정성이 요구되는 수준을 만족하는지 확인하기 위한 결함을 발견하는 메커니즘
목적
- 프로그램의 잠재된 오류의 발견
- 기술적인 기능 및 성능의 확인
- 사용자 요구 만족도 향상
- 제품 신뢰도 향상
테스트의 일반적인 원리
원리 | 내용 | 원인 |
---|---|---|
결함 발견 |
|
|
불완전성 |
|
|
정황 의존성 |
|
|
초기 집중
(요르돈 법칙) |
|
|
결함 집중 |
|
|
살충제 페러독스 |
|
|
오류-부재 궤변 |
|
|
참조 모델
테스트 종류
단계별 구분
- 소프트웨어 개발 생명주기에 따라 대응되는 테스트를 표현한 다이어그램
테스트 | 세부 내용 |
---|---|
단위 테스트
(Unit Test) |
|
통합 테스트
(Integration Test) |
|
시스템 테스트
(System Test) |
|
인수 테스트
(Acceptance Test) |
|
설치 테스트
(Install Test) |
|
접근방법에 따른 구분
정적 테스트
동적 테스트
구분 | 화이트박스 테스트 | 블랙박스 테스트 |
---|---|---|
개념 |
|
|
특징 |
|
|
테스트기법 |
|
|
관점 |
|
|