2024. 7. 27. 15:50ㆍ정보처리,전산
소프트웨어 테스트의 목적은 다양한 측면에서 소프트웨어의 품질을 보장하고, 문제를 사전에 발견하여 수정하는 것이다.
테스트 목적 및 유형
1. 회복 테스트 (Recovery Testing)
- 목적: 시스템이 실패 후 얼마나 잘 회복되는지 검증.
- 방법: 고의로 시스템 실패를 유도한 후, 시스템이 정상 상태로 복구되는지를 확인.
- 데이터베이스 시스템에서 장애 발생 후 데이터가 정상적으로 복구되는지 테스트.
2. 안전 테스트 (Security Testing)
- 목적: 시스템의 보안 취약점을 발견하고, 데이터 보호와 권한 관리를 검증.
- 방법: 보안적인 결함을 점검하고, 인증, 인가, 데이터 암호화 등을 테스트.
- SQL 인젝션, 크로스 사이트 스크립팅(XSS) 등의 취약점 테스트.
3. 강도 테스트 (Stress Testing)
- 목적: 시스템의 과부하 상황에서의 성능을 검증.
- 방법: 시스템에 과도한 부하를 가하여 성능이 어떻게 유지되는지 테스트.
- 동시에 수많은 사용자 요청을 보내어 서버의 반응을 테스트.
4. 성능 테스트 (Performance Testing)
- 목적: 시스템의 응답 시간, 처리량, 반응 속도를 검증.
- 방법: 다양한 시나리오에서 시스템의 성능을 측정.
- 웹 애플리케이션에서 페이지 로딩 시간을 측정.
5. 구조 테스트 (Structure Testing)
- 목적: 소스 코드의 복잡도와 내부 구조를 검증.
- 방법: 코드의 복잡도를 분석하고, 코드 커버리지를 측정.
- 코드 리뷰, 정적 분석 도구를 사용한 복잡도 분석.
6. 회귀 테스트 (Regression Testing)
- 목적: 코드 변경 후 기존 기능이 제대로 작동하는지 검증.
- 방법: 변경된 코드에 대해 이전에 성공했던 테스트 케이스를 다시 실행.
- 새로운 기능 추가 후 기존 기능이 정상 작동하는지 확인.
7. 병행 테스트 (Parallel Testing)
- 목적: 변경된 시스템과 기존 시스템을 병행하여 비교 검증.
- 방법: 동일한 입력으로 변경된 시스템과 기존 시스템을 테스트하고 결과를 비교.
- 신규 시스템을 기존 시스템과 동일한 조건에서 테스트하여 결과 비교.
8. A/B 테스트 (A/B Testing)
- 목적: 두 가지 다른 버전의 서비스나 기능을 비교하여 효과를 검증.
- 방법: 사용자 그룹을 나누어 각각 다른 버전을 사용하게 한 후 성과를 비교.
- 웹사이트의 두 가지 디자인 버전을 테스트하여 더 나은 디자인 선택.
9. 스모크 테스트 (Smoke Testing)
- 목적: 소프트웨어의 기본 기능이 정상적으로 작동하는지 신속히 확인.
- 방법: 주요 기능에 대한 간단한 테스트를 수행.
- 소프트웨어 빌드 후 주요 기능이 정상 작동하는지 빠르게 확인.
'정보처리,전산' 카테고리의 다른 글
텍스처 전송 시 Lock을 걸어야 하는 이유 (0) | 2024.09.05 |
---|---|
정수형(int)과 부동 소수점형(float) 데이터의 표현 (0) | 2024.09.05 |
테스트 오라클 (Test Oracle) (0) | 2024.07.27 |
클래스 변수와 인스턴스 변수 (0) | 2024.03.16 |
1. CPU (0) | 2024.01.18 |