소프트웨어 테스팅의 개념 및 프로세스

조유미·2023년 9월 3일

QA / SW testing

목록 보기
1/4

⏩바로가기
테스팅의 개념
테스팅의 일반적 원리
테스팅 프로세스

테스팅의 개념

어플리케이션 또는 시스템의 동작과 성능, 안정성이 사용자나 고객이 요구하는 수준을 만족하는지 확인, 검증하기 위해 결함을 발견하는 방법이다.


테스팅의 일반적 원리

  1. 결함의 존재성을 밝히는 활동
    테스팅 활동은 결함이 존재함을 밝히는 황동이다. 소프트웨어의 무결함을 증명하는 것은 거의 불가능하다.

  2. 완벽한 테스팅은 불가능
    매우 간단한 프로그램일지라도 모든 경우에 대해 테스트 하는 것은 불가능하다.

  3. 테스팅은 개발 초기에 시작
    개발기간을 단축하고 결함 예방 활동이 가능하며 궁극적으로 비용 감소로 이어진다.

  4. 살충제 패러독스
    동일한 살충제를 계속 뿌리면 벌레들도 결국 내성이 생기고 살충제는 더 이상 효과를 발휘하지 못하는 것에서 생긴 용어이다.
    테스트 활동 역시 동일한 테스트가 발복적으로 수행된다면 결국 해당 테스트로는 더 이상 새로운 버그를 찾아내지 못한다.

  5. 테스팅은 정황에 의존적
    각 분야마다 접근하는 방법 뿐만 아니라 우선 순위, 심각도 등도 달라진다.

  6. 오류-부재의 궤변
    개발된 시스템이 사용자의 필요와 기대에 부응하지 못한 채 쓸모가 없다면 결함을 찾고 수정하는 과정은 아무 의미 없다.


테스팅 프로세스

📝테스트 분석과 설계
› 테스트 베이시스 검토
› 테스트 상황, 요구사항, 데이터 식별
› 테스트 기법 할당
› 테스트 용이성 평가
› 테스트 환경 구축

💻테스트 구현과 실행
› 테스트 케이스 명세화: 우선순위 선정, 데이터 생성, 프로시저 작성
› 선행 테스팅
› 테스팅 실행 및 결과 기록
› 기대 결과와 비교

💬완료 조건의 평가와 리포팅
› 완료 조건의 달성 여부 확인
› 최초 테스트 보고서 작성

💾테스트 마감 활동
› 산출물 확인, 테스트웨어 보관
› 테스트 프로세스 평가

📌테스트 계획과 통제
› 테스트 목적/목표 설정 및 대상 연구
› 테스크 전략개발 및 리스크 분석
› 전략 수립 및 테스트 완료 조건

💡테스트 추정 및 조직구성
› 테스트 계획 활동 및 테스트 관리 제어
› 리포팅 및 리포팅 계획, 설계
› 진행 리포팅

맨 위로

profile
Game QA

0개의 댓글