Thief of Wealth
Published 2020. 7. 8. 13:41
7. 테스트 전략 개발/QA

테스트 실행방법

- 준비된 테스트 데이터 입력에 대한 방법

- 테스트 대상의 실행 방법

- 테스트 수행 결과의 관찰 방법

- 수행결과와 예상된 결과의 비교 방법

 

결함 기록 및 추적 방법

- 결함 기록 방법

: 발견된 오류에 대해 어떤 정보를 기록할 것인가?

- 결함 추적 방법

: 오류를 바로잡기 위해서 어떤 작업을 어떤 순서로 진행할 것인가?

: 발견된 오류는 수정 후 다시 테스트 되어 오류 해결 확인 시까지 추적되어야 한다.

 

- 결함상태관리

- 테스트 결함 보고서 (사건보고서)를 통해 진행한다.

 

테스트 자동화 방법

 

테스트 활동 테스트 도구 설명
테스트 계획 테스트 관리 도구 테스트 계획 수입 및 테스트 진행에 대한 모니터링을 지원하는 도구
테스트 노력 예측 지원 도구 테스트에 소요되는 노력, 시간 등에 대한 예측을 지원하는 도구로, 일반적으로 테스트 관리 도구의 한 부분
테스트 분석 및 설계 테스트 케이스/데이터 생성 도구 테스트 대상과 테스트 기법 및 테스트 적절성 기준을 충족시키는 테스트 케이스 및 데이터를 자동 생성하는 도구
커버리지 분석 도구 테스트 적합성을 판별하는 도구
테스트 실행 캡처/재생 도구 일반적으로 회귀테스트에 유용한 도구로 테스터가 입력한 데이터를 자동으로 기록하여, 이후 테스트 시 기록된 입력데이터를 이용하여 테스트를 자동으로 수행하는 도구
메모리 테스트 도구 프로그램 코드를 분석하여 메모리 누수 드의 무제를 검출하는 도구
성능 테스트 도구 일반적으로 로드 테스트에 해당하는 것으로 ,가상의 입력을 인위적으로 생성 후 시스템에 입력하여 시스템의 처리능력, 응답시간 등의 성능을 측정하는 도구
테스트 관리 도구 테스트 계획의 수립 및 테스트 진행에 대한 모니터링을 지원하는 도구
테스트 모니터링 및 통제 테스트 평가 및 개선 오류 추적 지원 도구 테스트 실행 시 발견된 오류를 기록하고, 이 오류가 종료될 때까지 테스터, 개발자의 테스트 및 개발 작업을 지원하는 도구

 

 

테스트 시작 기준

 

- 테스트 수행 시작 시점과 테스트 수행 준비 조건을 정의하는 것.

- 테스트 기반 테스트 시작 기준 예시

ex) 테스트 환경의 준비와 가용성 => 테스트서버정상가동, 유무선 인터넷 연결 정상

ex) 테스트 환경에서의 테스트 도구 준비 => 성능 측정 도구 셋업 및 정상 동작 확인, 동적 분석 도구 라이선스 확보

ex) 테스트 대상 코드의 가용성 => 단위 테스트 결과 구문 커버리지 80% 완료, 형상관리 서버로 통합된 소스

ex) 테스트 데이터 가용성 => 신규고객데이터 50건 확보, 해지된 고객 데이터 20건 확보

 

-테스트 단계별 테스트 시작 기준 예시

ex) 단위테스트

* 단위 화면 코딩 완료

* 단위 테스트 환경 및 관련 자료 준비 완료

ex) 통합 테스트

* 단위 화면별 테스트 완료

* 통합 테스트 환경 준비 완료

* 테스트 베이시스 및 테스트 데이터 등의 관련 자료 준비 완료

ex) 시스템 테스트

* 단위 화면별 통 합 테스트 완료

* 시스템 테스트 환경 및 관련 자료 준비 완료

* 시스템테스트 설계서 준비 완료

ex) 인수 테스트

* 시스템 테스트 종료

* 인수 테스트 환경 및 관련 자료 준비 완료

 

 

테스트 완료 기준

 

- 테스트 종료 시점과 테스트 수행 목표 달성 여부를 판단하는 조건을 정의하는 것.

- 테스트 케이스 기반 방법

    * 테스트 케이스의 통과 비율

    * 특정 테스트 케이스 통과 여부

- 테스트 적합성 커버리지 기반 방법

 

테스트 대상 적합성 커버리지 테스트 통과 기준
시스템 요구사항 커버리지 요구사항 명세서에 명시된 각 요구사항의 테스트 여부
모듈집합 구조설계 커버리지 구조 설계 명세서를 바탕으로 검증할 모듈간 통합 시나리오 테스트 여부
모듈 상세설계 커버리지 상세 설계 명세서를 바탕으로 모듈의 기능적 명세의 테스트 여부
코드 커버리지 모듈의 소스코드에 대한 테스트 여부

 

 

테스트 환경

- 테스트 대상이 테스트를 위하여 실행될 환경을 분석하는 것.

- 하드웨어: 서버/클라이언트 등의 특정 하드웨어 사양

- 시스템 소프트웨어 : 운영체제, 미들웨어, 프레임워크

- 외부 인터페이스 : 연동이 필요한 타 시스템

- 공존 소프트웨어 : 함꼐 수행될 수 있는 다른 응용 소프트웨어, 시스템 자원 공유/충돌로 인한 품질 영향

- 테스트 도구 : 테스트 실행 자동화 도구, 테스트 지원 도구

 

- 테스트 레벨 별 환경 분석 예

구분 단위 테스트 통합테스트 시스템테스트 인수테스트
시험대상 모듈, 화면 모듈집합, 서브시스템 전체 시스템 전체 시스템
목적 단위 모듈과 상세설계명세서 검증 인터페이스 검증 성능 요구사항 검증 테스트 인수여부 결정
하드웨어 개발환경 개발 환경 시스템 테스트 전용 환경 실제 시스템과 동일 환경
시스템 sw
외부 인터페이스 고려안됨 고려될 수 있음 시뮬레이션 또는 실제환경 시뮬레이션 또는 실제 환경
공존 소프트웨어 고려안됨 고려될 수 있음 고려될 수 있음 고려한다.
테스트 도구 웹 호환성 점검 도구 Test Stub,
Test Driver
성능테스트 도구 요구사항 추적 관리 도구

 

테스트 평가 방법

 

- 테스트 활동의 효과성 및 효율성에 대한 평가 계획 수립

    * 테스트 기법이 얼마나 효과적이었는지 평가할 방법

ex) 개별 모듈의 기능적 오류가 많을 경우, 단위 테스트에 사용된테스트 기법이 효율적이지 않다고 판단.

ex) 서능, 신뢰도 측면의 오류가 많을 경우, 시스템 테스트를 효과적으로 수행되지 않은 것으로 판단

    * 이를 평가하기 위해서 테스트를 수행하는 동안 수집될 데이터 정의

 

- 평가 결과에 따른 테스트 개선 계획 수립

    * 평가 결과를 바탕으로 테스트 활동을 개선시킬 방법에 대한 계획.

 

테스트 수행 조직

 

- 테스트 활동을 수행할 조직 구성원의 역할과 책임, 개발 조직과의 관계 설정에 대한 계획 수립.

- 테스트 조직 독립성의 장점

    * 결함을 보는 시각, 결함을 발견하는 방법이 개발자와 달라서 상대적으로 객관적이다

    * 테스트 전문가로서, 결함을 효과적이고 효율적으로 찾는 전략적 접근이 가능하다

    * 테스트 프로세스 평가를 통해 테스트 활동을 개선할 수 있다.

 

- 테스트 조직 독립성의 단점

    * 독립성 수준이 강할수록, 조직이 분리되어 개발 및 제품관련 정보에서 멀어질 수 있다.

(의사소통어렵고, 조직 간 적대관계 형성)

    * 개발자가 품질에 대해 책임지지 않으려는 현상 발생

    * 테스트가 프로젝트의 병목으로 작용하여 출시 지연에 대한 비난을 받을 수 있다.

 

 

테스트 조직 구성원

 

- 테스트 리더

* 테스트 활동과 업무를 계획하고 모니터링 및 통제

* 테스트 프로세스, 테스트 전략, 테스트 정책 등을 수립

* 테스트 결과와 진행 상황을 기반으로 계획을 수정하고 문제 요소를 보완하기 위해 필요한 모든 조치를 실시

* 테스트 진행상황을 측정하고 품질을 평가하기 위한 적절한 측정방법을 제시

* 테스트 중 수집한 정보를 기반으로 테스트 요약 보고서 작성.

 

- 테스터

* 수립된 테스트 계획을 검토하고 의견을 제시.

* 수립된 계획 및 테스트 리더의 지침에 따라 테스트 환경 구축, 테스트 설계, 테스트 데이터를 준비한다.

* 테스트 수준별 테스트를 실행 및 로그 작성

* 필요에 따라 테스트 관리 도구와 테스트 모니터링 도구를 사용한다.

 

테스트 일정

- 테스트 계획 분석 및 설계, 실행 및 평가를 수행하기 위한 일정 수립.

- 테스트 규모를 기준으로 현실성 있는 테스트 일정 산정

- 테스트 대상 시스템 규모, 테스트 설계의 수준, 투입 예정 테스트 지원, 시스템 개발 일정등을 고려

- 테스트 생산성을 높이기 위한 별도의 교육일정 수립.

 

테스트 산출물

 

- 단계별 test관련 산출물을 정의

- 정의된 산출물은 공식적으로 검토되고 고객과 합의되어야 함.

- 각 테스트 단계별로 테스트 계획서, 테스트 설계 명세서, 테스트 케이스 명세서, 테스트 로그 등 산출물이 작성될 수 있음.

 

- 테스트 수준별 테스트 산출물 정의 예

테스트 수준 주요업무 산출물 작성담장자
테스트 계획 테스트 계획 총괄 테스트 계획서 김x혁
단위 테스트 테스트 분석 및 설계 단위 테스트 케이스 명세서 김x혁
테스트 실행 및 결함 관리 테스트 로그 김x혁
통합 테스트 테스트 분석 및 설계 통합 테스트 케이스 명세서 김x혁
테스트 환경 준비 테스트 환경 관리 명세서 김x혁
테스트 실행 및 결함관리 테스트 로그
결함관리 대장
김x혁
시스템 테스트 테스트 분석 및 설계 시스템 테스트 케이스 명세서 김x혁
테스트 실행 및 결함 관리 테스트 로그
결함관리대장
품질검사서
김x혁
인수 테스트 테스트 종료 보고 총괄 테스트 종료 보고서 김x혁

 

 

 

 

 

'개발 > QA' 카테고리의 다른 글

9. 테스트 분석 및 설계  (0) 2020.07.08
8. 위험도 분석  (0) 2020.07.08
6. 테스트 계획 요소  (0) 2020.07.07
5. 소프트웨어 프로세스  (0) 2020.07.07
4. 개발 단계별 테스트 (단위, 시스템, 통합, 인수 테스트)  (0) 2020.07.03
profile on loading

Loading...