4.3.2 구조 기반 기법
SW나 시스템의 구조를 중심으로 테스팅하는 것
컴포넌트 레벨의 구조 : 구문, 결정 또는 분기문 등의 코드
통합 레벨의 구조 : 한 모듈이 다른 모듈을 호출하는 관계를 도식화한 콜 트리
시스템 레벨의 구조 : 메뉴 구조, 프로세스 혹은 웹 페이지 구조
코드의 구조를 테스트하는 기법은 특정 커버리지를 달성하기 위해 테스트를 설계하고 TC를 도출하기 위해 사용된다.
제어 흐름 테스트 기법을 적용한 TC : 구문 커버리지, 결정 커버리지를 100% 만족
최소 비교 테스트 기법을 적용한 TC : 변경조건/결정 커버리지를 100% 만족
*커버리지의 종류 (밑으로 갈수록 강력)
구문 커버리지 : 테스트 스위트에 의해 실행된 구문이 몇 퍼센트인지 측정 ( 가장 약함 )
결정 커버리지 : D포인트 내의 전체 조건식이 최소한 참(True)이 한 번, 거짓(False)이 한 번 선택되었는지 측정
- TC 최소 개수는 2개로 도출되며 조건/결정 커버리지에 비해 약함
조건 커버리지 : D포인트 내의 조건식이 참 한 번, 거짓 한 번을 모두 갖도록 개별조건식을 조합
- 결정 커버리지보다 강력함
조건/결정 커버리지 : 전체 조건식은 물론 개벼 조건식도 참과 거짓을 한번씩 모두 갖도록 조합
- 결정 커버리지와 조건 커버리지를 포함하는 개념
변경 조건/결정 커버리지 : 개별 조건식이 다른 조건식에 무관하게 전체 조건식의 결과에 독립적인 영향을 주도록 함
- 조건/결정 커버리지를 향상시킨 것으로 더 강력함
다중 조건 커버리지 : D포인트 내의 모든 개별조건식의 조합을 모두 고려하여 100% 커버리지를 달성
- TC의 양이 방대해지므로 출시전에 반드시 100% 결함을 제거해야만 하는 제품 테스트에 사용됨
* 제어 흐름 테스트 : 프로그램 구조를 테스트하는 것으로 컴포넌트나 통합 테스트에 사용되는 공식적인 화이트박스 기법
4.3.3 경험 기반 기법
탐색적 테스팅 접근법
- 테스트 설계, 테스트 수행, 테스트 계획, 테스트 기록 및 학습이 동시에 진행됨
- TC를 먼저 작성하지 않고, 테스트 대상을 실행하면서 동시에 테스트를 설계하고 계획한다.
- 테스트 목적을 담고 있는 테스트 차터를 기반으로 수행되는 것이 일반적
- 제한된 시간내에 목적을 정한 후 몰입하여 최소한의 기록을 남기며 테스트를 수행, 이후 요약보고
- TC를 문서화하는데에 소요되는 시간을 최소화하여 테스트를 '실행'하는데에 집중
- 여러 유형으로 훈련된 테스트 엔지니어가 많은 생각과 지적 활동을 통해 창조적으로 테스트하는 것을 강조
- 공식적 테스팅을 보완하는 측면에서 사용하거나 두가지 접근법을 병행하는 것이 좋음
- 페어와이즈 기법, 등가분할, 경계값 분석 등 여러 테스트 설계기법을 사용할 수 있으나 최소한의 기법을 사용할 것을 권장
- 테스트 설계를 향상시키는 것에 중점을 두고 있음, 테스트 설계 기법에 대한 이해가 필요
- 각 세션당 시간을 정해놓고 차터를 수행하며, 몰입하는 것을 원칙으로 함
[포함하는 내용]
- 제품 탐색
- 테스트 설계
- 테스트 실행
- 직관
- 검토 가능한 결과물
[탐색적 테스트 절차]
- 제품의 목적 식별
- 기능 식별
- 잠재적으로 불안정한 부분 식별
- 각각의 기능 테스트 및 문제점 기록
- 일관성 검증 테스트 설계 및 기록
[수행 요소]
- 정확한 리포팅
- 유연성 있는 일정관리
- 테스트 방향 정정
- 견고한 테스팅
- 효율적인 요약 보고
* 테스트 노트 : 정해진 형식 없이 테스터의 사고 추이 및 수행과정을 기록. 검토 가능한 결과물로 활용됨
- 테스트한 제품에 대한 노트 및 기록
- 발견한 결함과 장애에 대한 노트 및 기록
- 어떻게 테스트하였는지 기술하는 요약 문서
[탐색적 테스팅의 장점]
- 경험적 테스팅을 체계화할 수 있다.
- TC 작성시간을 줄여 보다 많은 테스트를 실행할 수 있다.
- 테스터 또는 테스트 엔지니어의 역량을 월등히 향상시킬 수 있다.
- 적은 테스트 인력으로 많은 테스트를 수행할 수 있다.
- 명세가 거의 없고 시간이 부족한 경우 테스트를 효과적/효율적으로 수행할 수 있다.
'ISTQB 공부방' 카테고리의 다른 글
Part.5 테스트 관리 - ISTQB (1) (0) | 2021.01.06 |
---|---|
Part.4 테스트 설계 (고급)기법 - ISTQB (0) | 2021.01.06 |
Part.4 테스트 설계 기법 - ISTQB (2) - 명세기반 기법 (0) | 2021.01.05 |
Part.4 테스트 설계 기법 - ISTQB (1) (0) | 2021.01.04 |
Part.3 정적 기법 - ISTQB (0) | 2021.01.04 |
댓글