[QA]소프트웨어 품질.7-1
[QA]소프트웨어 품질.7-1
테스트 계획 수립
테스트 전략이란?
- 기능 테스트, 성능 테스트, 보안 테스트 등의 조합으로 구성될 수 있음.
- 효율적인 전략은 리스크를 줄이고, 테스트의 품질을 높이는 데 도움을 줌.
- 목표 달성을 위한 전체적인 접근 방식으로, 프로젝트 특성과 리스크를 고려하여 적합한 테스트 유형과 방법을 선택함.
테스트 전략 유형
- 위험 기반 접근법: 주요 리스크를 우선적으로 테스트.
- 요구사항 기반 접근법: 소프트웨어 요구사항에 따라 테스트 설계.
- 자동화 접근법: 반복적인 작업을 자동화하여 효율성 극대화.
- 탐색적 접근법: 정해진 테스트 케이스 외에도 결함 가능성이 높은 영역 탐색.
자원 계획의 중요성
- 효율적인 자원 관리는 테스팅 활동이 중단 없이 진행되도록 보장.
- 테스트 범위와 목표에 따라 필요 자원을 사전에 정의함.
- 테스트 필요 인력, 도구, 예산 등을 배분하는 과정으로, 프로젝트 성공 가능성을 높이는 핵심 요소.
브룩스의 법칙 (Brook’s Law)
“늦어진 프로젝트에 인력을 추가하면 프로젝트가 더 늦어진다.”
- 소프트웨어 개발에서 자주 인용되는 경험 법칙.
- 커뮤니케이션 복잡성 증가, 훈련 비용 발생, 병렬화의 한계로 인해 프로젝트 일정이 더 늦어질 수 있음.
테스트 환경이란?
- 소프트웨어 검증에 필요한 모든 조건 및 도구 포함.
- 운영 환경과 유사한 조건을 설정하면 테스트 결과의 신뢰성을 높일 수 있음.
- 하드웨어, 소프트웨어, 네트워크 조건 등을 포함.
개발 환경 구분
- 로컬 개발 환경 (Local): 각 개발자 PC에서 개발 및 테스트 진행.
- 서버 개발 환경 (Dev): 개발자들이 만든 코드를 합쳐 기능 테스트를 수행.
- 스테이징 환경 (Staging): 운영 환경과 거의 동일한 환경을 만들어 비기능적 요소(보안, 성능 등) 검증.
- 운영 환경 / 라이브 서버 (Production): 실제 서비스가 운영되는 환경.
테스트 분석과 설계
테스트 조건이란?
- 검증해야 할 특정 상황, 입력값, 기준을 정의하는 요소
- 요구사항 분석 결과를 바탕으로 테스트 우선순위 설정하는데 활용
테스트 조건 도출 방법
- 기능, 요구사항 분석
- 리스크 높은 부분 확인
- 사용자 입장에서 도출
- 최대/최솟값 검증
예시)
| 항목 | 내용 |
|---|---|
| 테스트 목표 | 동시접속자 10만명 이상에서도 안정적인 스트리밍 서비스 제공 |
| 조건 | 네트워크 대역폭 변화, 다양한 해상도 옵션, 지역별 성능 차이 |
| 기법 | 부하 테스트 - 네트워크 대역폭을 줄여가며 시스템 성능 측정 스트레스 테스트 - 최저 대역폭 상황에서 시스템 한계 확인 |
| 실행 과정 | 대역폭이 10% 이하로 감소하는 환경을 설정하고 테스트 진행 |
| 결과 분석 | 스트리밍 품질이 현저히 저하됨을 확인 |
| 수정 조치 | CDN(Content Delivery Network) 설정 최적화 |
| 최종 결과 | 수정 후 재테스트에서 모든 조건에서 품질 저하 없이 안정적인 스트리밍 서비스 제공 확인 |
Content Delivery Network (CDN)
웹 페이지, 이미지, 동영상, 오디오 등 다양한 콘텐츠를 빠르게 전송하는 네트워크 기술
테스트 데이터란?
- 테스트 실행 시 필요한 입력값과 환경을 구성한 자료
- 현실적인 시나리오 반영, 다양한 경계 조건 포함 필요
- 정상 입력값, 경계값, 비정상 데이터 등을 포함해 검증 필수
테스트 데이터 준비 방법
테스트 데이터는 다양한 테스트 시나리오에 적합하게 설계되어야 하며, 일반적으로 아래 네 가지 방법을 활용할 수 있다.
데이터 생성 방법
| 방법 | 설명 |
|---|---|
| 실제 데이터 활용 | 실제 운영 데이터를 기반으로 생성 |
| 모의 데이터 생성 | 보안 문제로 실제 데이터를 사용할 수 없을 때 활용 |
| 경계값 포함 | 최대값, 최소값 등 경계 조건을 포함 |
| 비정상 데이터 준비 | 오류 발생 가능성을 검증하기 위해 잘못된 입력값 포함 |
테스트 데이터 설계의 중요성
- 실제 운영 환경과 유사한 데이터를 사용하면 테스트 결과의 신뢰성이 향상됨
- 경계값 및 비정상 데이터 포함 시, 예외 상황에 대한 대비 가능
- 보안 및 개인정보 보호를 위해 필요한 경우 모의 데이터를 생성하여 활용
This post is licensed under CC BY 4.0 by the author.
