본문 바로가기

knowledge/CSTS

[CSTS] 요약정리 암기노트 2. 테스트 설계 기법

💎 테스트 설계 기법
- 정적 T : 리 정
- 동적T : 구 명 경

💎 정적 T : T대상을 실행 x , 동적 T에서 검출하기 힘든 오류 찾아냄 (리정)
⚡ 리뷰 => 기쓰관리펙트감사
- SW 산출물에 존재하는 결함 검출 (결함제거비용 ↑)
- 프로젝트 진행상황을 점검, 전문가 그룹이 수행, 체크리스트 활용
- 관리리뷰 : 진행상황 모니터, 현재 평가해서 필요하면 변경
- 기술리뷰 : 유능한 인력으로 구성된 팀이 작업수행 -> 대표 엔지니어가 주재 / 관리자 참가가능
- 인스펙션 = 동료검토 : 코드를 포함한 SW산출물 검토 (주작낭기검), 간으한 개발초기에 검사, 관리자 참여금지
- 워크쓰루 : 비형식적 결함검출방법, 참가자의 교육이나 지식공유를 위해 하기도 함 / 작 = 주 + 기 / 관리자 금지
- 감사 : SW제품 및 프로세스가 규제, 표준, 가이드라인, 계획, 절차를 준수하고 있는지 독립적으로 평가

⚡ 정적분석 : 자동화도구 사용, 도구의 도움으로 정적T수행
- 코딩표준 : 일관되게 코드 작성 (undefined behavior)
- 순환복잡도 : 분기노드 + 1 = 간선개수 - 노드개수 +2
- 자료흐름 분석 : 잠재적 결함 (dk, ~u, ~k, dd, kk, d~) / 심각한 결함 (ku)

💎 동적 T : T대상을 실행하여 결함 검출 = TC 결정 (구명경)
⚡ 구조기반 T = 화이트박스 T : 소스코드 참고해서 TC결정
-> 프로그램의 모든 경로를 최소한 한번은 실행 (이상적)
-> 일부 경로만 T (현실적)
=> 변기문다결조
- 실제 문제에서 T 종류에 따른 계산을 할 수 있는게 중요

⚡ 명세기반 T = 블랙박스 T : 사용자 요구사항 기술된 명세, 설계정보 이용해서 TC개발
-> 컴통시인 전 과정에 걸쳐 사용가능
-> 코드 모르는 사람이 수행
-> XP (개발자가 TC작성후 코드구현)
-> 큰 규모에 효과적
- 테스트 대상의 특성에 따라 분류되는 걸 잘 외워두기.

⚡ 경험기반 T : 기존의 T 경험 등을 바탕으로 수행
🏳‍🌈 오류추정
: 개발자가 범할 수 있는 실수 추정, 결함검출 되도록 TC설계
: 경험과 직관 바탕 -> 오류 상황 나열에서 시작
: 동등분할, 경곗값 분석 등 명세기반 T 와 함께 사용 가능

🏳‍🌈 탐색적 테스트
: 사전에 구체적으로 TC설계, 기록, 수행
: 테스터의 지식에 의존

💎 위험기반 T
- SW 요구사항 명세서로 피처를 구함
- 위험도 산정 : 긴 심 발 (긴급성, 심각성, 발생가능성) => 1 (제일심각) ~ 5 (안정)
- 테스트 강도 결정 : 고 > 균 > 부 > 결



위에 내용들은 아래에 있는 정리를 글로 조금 옮긴 거구요!
실제론 이렇게 가시적으로 구조가 보이게끔
정리해서 외워주었습니다
암기법들은 최대한 백지상태에서
외워써보려고 했습니다 :)
아래 이미지 파일 참고해주세요 😉