Post

[QA]소프트웨어 품질.7-1

[QA]소프트웨어 품질.7-1

테스트 계획 수립

테스트 전략이란?

  • 기능 테스트, 성능 테스트, 보안 테스트 등의 조합으로 구성될 수 있음.
  • 효율적인 전략은 리스크를 줄이고, 테스트의 품질을 높이는 데 도움을 줌.
  • 목표 달성을 위한 전체적인 접근 방식으로, 프로젝트 특성과 리스크를 고려하여 적합한 테스트 유형과 방법을 선택함.

테스트 전략 유형

  • 위험 기반 접근법: 주요 리스크를 우선적으로 테스트.
  • 요구사항 기반 접근법: 소프트웨어 요구사항에 따라 테스트 설계.
  • 자동화 접근법: 반복적인 작업을 자동화하여 효율성 극대화.
  • 탐색적 접근법: 정해진 테스트 케이스 외에도 결함 가능성이 높은 영역 탐색.

자원 계획의 중요성

  • 효율적인 자원 관리는 테스팅 활동이 중단 없이 진행되도록 보장.
  • 테스트 범위와 목표에 따라 필요 자원을 사전에 정의함.
  • 테스트 필요 인력, 도구, 예산 등을 배분하는 과정으로, 프로젝트 성공 가능성을 높이는 핵심 요소.

브룩스의 법칙 (Brook’s Law)

“늦어진 프로젝트에 인력을 추가하면 프로젝트가 더 늦어진다.”

  • 소프트웨어 개발에서 자주 인용되는 경험 법칙.
  • 커뮤니케이션 복잡성 증가, 훈련 비용 발생, 병렬화의 한계로 인해 프로젝트 일정이 더 늦어질 수 있음.

테스트 환경이란?

  • 소프트웨어 검증에 필요한 모든 조건 및 도구 포함.
  • 운영 환경과 유사한 조건을 설정하면 테스트 결과의 신뢰성을 높일 수 있음.
  • 하드웨어, 소프트웨어, 네트워크 조건 등을 포함.

개발 환경 구분

  • 로컬 개발 환경 (Local): 각 개발자 PC에서 개발 및 테스트 진행.
  • 서버 개발 환경 (Dev): 개발자들이 만든 코드를 합쳐 기능 테스트를 수행.
  • 스테이징 환경 (Staging): 운영 환경과 거의 동일한 환경을 만들어 비기능적 요소(보안, 성능 등) 검증.
  • 운영 환경 / 라이브 서버 (Production): 실제 서비스가 운영되는 환경.

테스트 분석과 설계

테스트 조건이란?

  • 검증해야 할 특정 상황, 입력값, 기준을 정의하는 요소
  • 요구사항 분석 결과를 바탕으로 테스트 우선순위 설정하는데 활용

테스트 조건 도출 방법

  1. 기능, 요구사항 분석
  2. 리스크 높은 부분 확인
  3. 사용자 입장에서 도출
  4. 최대/최솟값 검증

예시)

항목내용
테스트 목표동시접속자 10만명 이상에서도 안정적인 스트리밍 서비스 제공
조건네트워크 대역폭 변화, 다양한 해상도 옵션, 지역별 성능 차이
기법부하 테스트 - 네트워크 대역폭을 줄여가며 시스템 성능 측정
스트레스 테스트 - 최저 대역폭 상황에서 시스템 한계 확인
실행 과정대역폭이 10% 이하로 감소하는 환경을 설정하고 테스트 진행
결과 분석스트리밍 품질이 현저히 저하됨을 확인
수정 조치CDN(Content Delivery Network) 설정 최적화
최종 결과수정 후 재테스트에서 모든 조건에서 품질 저하 없이 안정적인 스트리밍 서비스 제공 확인

Content Delivery Network (CDN)

웹 페이지, 이미지, 동영상, 오디오 등 다양한 콘텐츠를 빠르게 전송하는 네트워크 기술


테스트 데이터란?

  • 테스트 실행 시 필요한 입력값과 환경을 구성한 자료
  • 현실적인 시나리오 반영, 다양한 경계 조건 포함 필요
  • 정상 입력값, 경계값, 비정상 데이터 등을 포함해 검증 필수

테스트 데이터 준비 방법

테스트 데이터는 다양한 테스트 시나리오에 적합하게 설계되어야 하며, 일반적으로 아래 네 가지 방법을 활용할 수 있다.

데이터 생성 방법

방법설명
실제 데이터 활용실제 운영 데이터를 기반으로 생성
모의 데이터 생성보안 문제로 실제 데이터를 사용할 수 없을 때 활용
경계값 포함최대값, 최소값 등 경계 조건을 포함
비정상 데이터 준비오류 발생 가능성을 검증하기 위해 잘못된 입력값 포함

테스트 데이터 설계의 중요성

  • 실제 운영 환경과 유사한 데이터를 사용하면 테스트 결과의 신뢰성이 향상됨
  • 경계값 및 비정상 데이터 포함 시, 예외 상황에 대한 대비 가능
  • 보안 및 개인정보 보호를 위해 필요한 경우 모의 데이터를 생성하여 활용
This post is licensed under CC BY 4.0 by the author.