먼지 쌓인 키보드
[ISTQB CTFL] 실라버스 A유형 문제 정리/요약 ( 21~40번 ) 본문
* 결정 테스팅과 커버리지
결정 테스팅 : 코드에 존재하는 결정문을 실행하고 결정문의 결과에 따라 실행되는 코드를 테스트
결과 커버리지 : 일반적으로 백분율로 표기하며, 테스트로 실행된 결정문 결과의 수를 테스트 대상의 가능한 모든 결정문 결과의 수로 나눠서 계산
* 구문 테스팅과 커버리지
구문 테스팅 : 코드의 실행 가능한 구문을 실행
구문 커버리지 : 일반적으로 백분율로 표기하며 테스트로 실핸한 구문의 수를 테스트 대상의 모든 실행 간으한 구문의 수로 나눠서 계산
* 구문 및 결정 테스팅의 가치
- 100% 구문 커버리지를 달성하면 코드에 존재하는 모든 실행 간으한 최소한 한번씩은 테스트했다는 것
(하지만 모든 결정 로직을 테스트했다는 것을 보장하지않음)
- 결정 테스팅은 구문 테스팅보다 커버리지가 높다.
- 구문 커버리지는 다른 테스트에 의해 실행되지 않은 코드의 결함을 찾는데 도움
- 결정 커버리지는 다른 테스트가 참과 거짓 결과 모두를 테스트하지 않은 코드의 결함을 찾는데 도움
- 100%결정 커버리지는 100% 구문 커버리지를 보장 ( 반대는 해당X )
- 결정 커버리지가 구문 커버리지보다 더 강력
* 탐색적 테스팅
- 유사한 애플리케이션에 대한 지식과 기술을 가진 숙련된 테스터가 수행해야함
- 테스터는 탐색적 테스팅을 수행하면서 끊임없이 결정을 내려야함
- 명세가 충분하지않거나, 테스팅 시간이 부족하거나 시간적 압박이 심할 때 가장 유용하게 사용
* 동등 분할 분석
- 유효값 : 컴포넌트나 시스템에 입력되는 값 <-> 비유효값 : 컴포넌트나 시스템이 거부하는 값
- 입력값, 출력값, 내부값, 시간 관련값( 예: 이벤트 전 또는 후 ), 인터페이스 매개변수( 예 : 통학테스팅에서 테스트하는 통합 컴포넌트)를 포함하여 테스트 대상과 관련된 모든 데이터 요소에 대해 식별
예제문제1 보너스 산정 기준 (2년 이하, 2년초과~5년미만, 5년이상~10년미만, 10년 이상) 1.동등파티션: 0<근무연한<=2 2.동등파티션: 2<근무연한<=5 3.동등파티션: 5<근무연한<=10 4.동등파티션: 10<근무연한
예제문제2 비디오 애플리케이션 요구사항 640x480 1280x720 1600x1200 1920x1080 이 요구사항은 개별적인 값들이 열거되어 있는 경우므로, 각각의 값이 그 자체로 동등분할 파티션이 됨 테스트 케이스 4가지 |
* 포인트 경계값 분석
동등분할을 수행하여 경계값 도출 가능
예제문제) - 50 km/h 이하로 주행 시 아무 것도 하지 않음 - 50 km/h 초과, 55 km/h 이하로 주행 시 경고를 보냄 - 55 km/h 초과, 60 km/h 이하로 주행 시 벌금이 부과됨 - 60 km/h 초과로 주행 시 운전 면허가 중지됨
1. ~50 2-포인트 경계값 : 50, 51 2. 51~55 2-포인트 경계값 : 50, 51, 55, 56 3. 56~60 2-포인트 경계값 : 55, 56, 60, 61 4. 61~ 2-포인트 경계값 : 60, 61, |
* 상태 전이 테스팅
일반적으로 유효한 전이만 보여줌
비유효 전이는 표시하지않음
* 테스터와 테스트매니저 차이
*테스트 매니저 / 테스트 관리자
- 테스팅 활동 계획, 모니터하고 제어
- 테스트 정책과 테스트 전략을 개발하고 리뷰
- 테스터의 역량과 경력 개발
- 테스트 환경 구축에 관한 결정
- 테스트 케이스 작성 X
*테스터
- 테스트 계획을 리뷰하고 계획 작성에 참여
- 도구사용
- 테스트 내용을 구체화하고 실행
- 테스트 우선순위를 정하고 실행
* 테스팅에 사용하는 메트릭 ( 메트릭 : 측정에 쓰이는 측정 척도와 방법 )
테스팅 활동 중이나 종료 시점에 아래와 같은 사항을 평가하기 위해 메트릭을 수집
- 계획한 일정과 예산 대비 진행 상황
- 테스트 대상의 현재 품질
- 테스트 접근법의 타당성
- 목적 대비 테스트 활동의 효과
* 테스트 계획의 목적과 내용
테스트 계획 : 개발 및 유지보수 프로젝트의 테스트 활동에 대한 전반적인 내용을 담음
제품의 수명주기 전반에 걸쳐 이루어지는 지속적인 활동
*테스팅의 일반적인 시작조건과 종료(완료) 조건
시작 조건
- 테스트 가능한 요구사항, 사용자 스토리나 모델의 가용 여부
- 이전 테스트 레벨의 종료 조건을 충족한 테스트 항목의 가용 여부
- 테스트 환경 가용 여부
- 필요한 테스트 도구 가용 여부
- 테스트 데이터와 기타 필요한 자원의 가용 여부
종료 조건
- 계획한 테스트 실행 조건
- 정의한 커버리지 수준의 도달
- 해결하지 못한 결함 수가 합의된 수보다 적음
- 신뢰성, 수행 효율성, 사용성, 보안성, 기타 관련된 품질 특성의 수준이 원하는 수준에 도달
* 테스트 프로젝트 초기
통과/실패 기준에 대한 정의, 테스팅의 목적
* 테스트 보고서에 들어가는 내용
- 테스트 접근법과의 차이
- 완료 기준 대비 실제 진척률 측정
- 테스트 항목의 품질 측정
*테스트 전략과 테스트 접근법
분석적
- 리스크 수준에 기반해 테스트를 설계하고 우선순위화
- 이 테스트 전략은 몇가지 요인(예 : 요구사항 또는 리스크) 분석을 기반
방법론적
- 사전에 정의된 일련의 테스트 컨디션을 체계적으로 사용
모델기반
- 요구되는 제품의 특정 측명에 대한 모델을 기반
- 제품의 필수적 측면에 대한 상태 전이 다이어그램을 기반으로 테스트
전문가조언 / 자문
- 주로 이해관계자, 비즈니스 도메인 전문가, 기술 전문가등의 조언, 지도 지시를 바탕
- 관련 비즈니스의 전문가의 관점에 기반해 테스트 항목을 선택
프로세스 준수 / 표준 준수
- 외부 규정이나 표준을 기반으로 테스트를 분석, 설계 구현
(예: 특정 산업 표준에서 제시하는 규정이나 표준, 프로세스의 문서화 등)
리그레션-기피
- 기존 기능에 대한 리그레션 테스트 기피를 목표
(기존 테스트웨어의 재사용, 리그레션 테스트 자동화 확대, 테스트 스위트 표준화가 포함)
반응적
- 테스트 대상 컴포턴트나 시스템에 따라 대응하고 테스트 실행 중 발생하는 이벤트에 따라 반응적으로 수행
* 메트릭 기반 접근
- 과거 유사한 프로젝트의 메트릭에 기반해 테스팅 노력을 추정하거나 전형적인 값을 기반
* 종속관계
R1 -> R3 는 R3가 R1에 종속
* 이상적인 테스트 케이스 실행 순서
- 가장 우선순위가 높은 테스트 케이스를 먼저 실행
(예외사항)
- 실제로 테스트 케이스간에 종속관계가 있거나 테스팅 대상의 기능 자체가 종속관계라면 우선순위에 따라 실행하지 못할 수 있다.
- 높은 테스트케이스가 우선순위 낮은 테스트 케이스에 종속되어있다면 낮은 우선순위를 가진 테스트 케이스를 먼저 실행
예제문제) 요구사항의 종속관계에 따라 테스트 실행 일정을 구성한 것은?
우선순위 : R1-R2-R3-R4-R5-R6....
(중복수행할 필요없음) 1. R1 – R2 (R3->R2이므로 종속되어있는 R2는 R3보다 늦게 실행) R1 – R3 – R2
2. R1 – R3 – R2 (R1, R2, R3의 다음 순서인 R4를 시작해야하지만, R4 종속되어있는 R2, R5, R6가 R4전에 실행되어야함) R1 – R3 – R2- R5 – R6
3. R1 – R3 – R2 – R5 – R6 ( R2,R5,R6에 종속되어있는 R4와 R7가 남았고, 둘다 종속되어있으므로 원래의 우선순위인 R4가 먼저 실행되고 그 뒤 R7이 실행되어야함) R1 – R3 – R2 – R5 – R6 – R4 - R7 |
* 결함보고서의 내용
- 식별번호
- 제목, 보고하는 결함에 대한 짧은 요약
- 결함 보고 날짜, 보고 주체 조직 및 작성자
- 테스트 항복 식별자와 환경
- 결함을 발견한 개발 수명주기 단계
- 로그, 데이터베이스 덤프, 스크린샷, 녹화 기록(테스트 실행 중 녹화됐다면)등의 결함 재현과 해결을 위한 설명
- 기대 및 실제 결과
- 이해관계자의 관점에서의 결함 영향도(심각도)의 범위와 정도
- 수정 우선순위 (긴급하게 처리해야하는 순서)
- 결함 보고서의 상태
- 결론, 의견, 승인 여부
- 글로벌 이슈
- 변경 이력
- 참조
* 테스트 실행 지원 도구 사용의 이점
- 반복적인 수동업무의 감소로 시간 절약
- 월등한 일관성과 반복성 제공
- 보다 객관적인 평가 기준 제공
- 테스팅 관련 정보에 접근이 쉬움
* 테스팅 지원 도구의 잠재적인 리스크
- 도구에 대한 비현실적인 기대
- 초기 도구 도입에 필요한 시간, 비용 노력에 대한 과소평가
- 도구로 의미있고 지속적인 효과를 얻는데 필요한 시간과 노력을 과소평가
- 도구가 생성하는 테스트 자산을 유지하기 위한 노력의 과소평가
- 테스트 자산에 대한 버전의 관리 소홀
- 다수의 공급업체에서 제공하는 주요 도구간의 관계와 상호운용성 이슈를 관리하지않음
- 지원, 업그레이드, 결함 수정에 대한 공급업체의 부적절한 반응
- 도구 공급 업체의 판매 중단이나 폐업과 같은 위험성
- 오픈소스 프로젝트는 연기되거나 중단될수있음
- 도구가 새로은 플랫폼이나 기술을 지원하지 않음
- 도구의 소유권이 명확하지않음
요약 => 1. 도구를 사용하는것에 대한 노력이 과소평가되거나 도구의 효과를 과대평가하는 경향이 있음
2. 도구 공급업체에 의존해야하기 때문에 업체의 사정에 따라 위험이 발생.
* 테스트 도구의 분류
- 테스팅 및 테스트웨어 관리 지원 도구 요구사항 관리 도구, 결함 관리 도구, 형상 관리 도구, 지속적인 통합 도구(개발자 지원)
- 정적 테스팅 지원도구 리뷰 지원 도구, 정적 분서거 도구(개발자 지원)
- 테스트 설계 및 구현 지원 도구 테스트 설계 도구, 모델 기반 테스팅 도구, 테스트 데이터 준비 도구, 인수테스트 주도개발과 행위 주도 개발 도구, 테스트 주도개발 도구
- 테스트 실행 및 로깅 지원 도구 테스트 실행도구, 커버리지 도구, 테스트 하네스, 단위 테스트 프레임워크 도구
- 성능 측정과 동적 분석 지원 도구 성능 테스팅 도구, 모니터링 도구, 동적 분석 도구(개발자 지원)
- 테스트 목적 테스팅 지원 도구 데이터 품질 평가, 테이터 변환/마이그레이션, 사용성/접근성/현지화/보안/이식성 테스팅 (이식성 테스팅 : 여러개의 지원 플랫폼에서 소프트웨어를 테스트) |
'공부 관련 > 소프트웨어 QA' 카테고리의 다른 글
[ISTQB CTFL] 실라버스 B유형 문제 정리/요약 (3) | 2019.11.24 |
---|---|
OR AND 커버리지 문제 (구문, 결정, 조건, 조건/결정, 변경 조건/결정, 다중 조건) (0) | 2019.11.04 |
정적 vs 동적 비교 (0) | 2019.11.03 |
오류 / 결함 / 장애 (error/defect/failure) 의 차이 (0) | 2019.11.03 |
[ISTQB CTFL] 실라버스 A유형 문제 정리/요약 ( 1~20번 ) (0) | 2019.10.27 |