기능 테스트
1. 개요
기능 테스트는 소프트웨어의 각 기능이 요구 사항에 따라 올바르게 작동하는지 확인하는 테스트 방법이다. 스모크 테스트, 정상 기능 테스트, 회귀 테스트, 사용성 테스트 등이 있으며, 일반적으로 기능 식별, 입력 데이터 생성, 출력 결정, 테스트 케이스 실행, 결과 비교, 요구 사항 충족 확인의 6단계를 거쳐 수행된다.
| 유형 | 소프트웨어 테스트 |
|---|---|
| 목적 | 소프트웨어 기능 검증 |
| 관련 항목 | 소프트웨어 테스트 블랙 박스 테스트 화이트 박스 테스트 단위 테스트 통합 테스트 시스템 테스트 회귀 테스트 |
| 정의 | 기능 테스트는 소프트웨어가 명세된 요구사항을 충족하는지 확인하는 품질 보증 프로세스이다. |
|---|---|
| 목표 | 소프트웨어 애플리케이션의 각 기능이 올바르게 작동하는지 확인한다. |
| 방법 | 테스트 케이스를 설계하여 소프트웨어의 기능을 검증한다. 입력 값을 제공하고, 결과를 예측하고, 실제 결과를 예상 결과와 비교한다. |
| 테스트 레벨 | 단위 테스트 통합 테스트 시스템 테스트 사용자 인수 테스트 |
| 테스트 유형 | 블랙 박스 테스트: 소프트웨어의 내부 구조를 알지 못한 채 기능 검증 화이트 박스 테스트: 소프트웨어의 내부 구조를 고려하여 기능 검증 |
| 장점 | 소프트웨어의 기능적 결함을 식별할 수 있다. 사용자의 관점에서 소프트웨어를 검증할 수 있다. 상대적으로 쉽게 자동화할 수 있다. |
|---|---|
| 단점 | 소프트웨어의 모든 기능을 완벽하게 테스트하는 것은 불가능하다. 내부 구조의 결함을 발견하기 어려울 수 있다. |
| 주의사항 | 기능 테스트는 소프트웨어 품질 보증의 중요한 부분이지만, 완벽한 품질을 보장하지는 않는다. |
|---|
2. 기능 테스트의 종류
기능 테스트에는 많은 종류가 있다:
* 스모크 테스트
* 정상 기능 테스트
* 회귀 테스트
* 사용성 테스트
2.3. 회귀 테스트
기능 테스트에는 여러 종류가 있으며, 회귀 테스트는 그중 하나이다.
3. 기능 테스트의 단계
기능 테스트는 일반적으로 다음 6단계를 포함한다.
# 소프트웨어가 수행할 것으로 예상되는 기능의 식별
# 기능의 사양을 기반으로 입력 데이터 생성
# 기능의 사양을 기반으로 출력 결정
# 테스트 케이스 실행
# 실제 출력과 예상 출력 비교
# 애플리케이션이 고객의 요구사항에 따라 작동하는지 확인
3.1. 1단계: 기능 식별
소프트웨어가 수행할 것으로 예상되는 기능을 식별하는 단계이다.
3.2. 2단계: 입력 데이터 생성
기능 사양을 기반으로 입력 데이터를 생성한다.
3.3. 3단계: 출력 결정
기능의 사양을 기반으로 예상되는 출력을 결정하는 단계이다. 이 단계에서는 소프트웨어가 특정 입력에 대해 어떤 결과를 내놓아야 하는지를 명확히 정의하며, 이는 이후 단계에서 실제 테스트 결과를 비교하는 기준이 된다.
3.4. 4단계: 테스트 케이스 실행
기능 테스트 절차의 네 번째 단계는 테스트 케이스를 실행하는 것이다.
3.5. 5단계: 결과 비교
실제 출력과 예상 출력을 비교한다.
3.6. 6단계: 요구 사항 충족 확인
기능 테스트는 일반적으로 다음 6단계를 포함한다.
# 소프트웨어가 수행할 것으로 예상되는 기능의 식별
# 기능의 사양을 기반으로 입력 데이터 생성
# 기능의 사양을 기반으로 출력 결정
# 테스트 케이스 실행
# 실제 출력과 예상 출력 비교
# 애플리케이션이 고객의 요구 사항에 따라 작동하는지 확인