자격증

CSTS 일반등급 요약 제 10, 11, 12 장.. 나머지

영우는여전히 2025. 2. 27. 18:17

제 10장 명세 기반 테스트

= 블랙박스 테스트

내부 논리구조 참조 안함(코드 안뜯어봄)

기술된 명세, 설계 정보 등을 이용함.

명세 정보 얻을 수 있는 한 제한 없이

모든 테스트 전 과정 가능(컴통시인)

  1. 동등 분할(Equivalence Partitioning)
  2. 경곗값 분석
  3. 조합 테스트
  4. 결정표 테스트
  5. 상태 전이 테스트

1. 동등 분할

*Equivalence Partitioning

: 효과적으로 테스트 케이스의 개수를 줄이는 소프트웨어 테스팅의 근간의 방법

 

프로그램 입력이나 출력영역을 몇 개 영역(동등클래스)으로 분할하여,
각 클래스에서 하나의 값을 선택하여 테스트케이스로 이용 → 입력/출력이 분할되어 나온 클래스들이 테스트 케이스에 최소한 한 번은 포함

  • 동등클래스들은 서로 공통된 값이 없어야 한다.
  • 유효한 입력 및 출력 뿐 아니라, 유효하지 않은 입력 및 출력(전혀 기대하지 않은 입력값)도 고려해야 한다.

  1-1. One-to-One 동등 분할

  • 입 출력 영역을 분할한 클래스들과 테스트 케이스 간 1:1 관계를 명시적으로 보여준다.

  1-2. 최소화 동등 분할

  • 하나의 TC와 하나의 분할 된 클래스를 명시적으로 연결한 one to one 방식과는 다르다
  • 이 방법은 하나의 TC에 여러 개의 클래스가 포함되도록 한다.

유효하지 못한 TC는 one to one 방식으로 하고

유효한 것은 최소화 동등 방식으로 하는 것도

고려 해볼 만 하다.


1-3. 분류트리 범위 X


2. 경곗값 분석

: 입력영역 경계 근처에 있는 값들을 테스트케이스로 이용

  • 동등 분할 처럼 입출력 영역을 여러 클래스로 분할 → 그러나 임의의 값이 아닌 클래스의 경계, 경계 근처의 값을 사용한다

* Exercise 05번 문제 참고


 

3. 조합 테스트

: 동등분할이나 BVA 등의 방법으로 입력 인자를 여러 클래스(또는 값)로 분할하였을 때 이들을 조합하여 테스트케이스를 구성

  3-1. Each choice 테스트 

: 각 입력인자의 분할된 클래스에서 최소한 하나의 입력값이 테스트케이스에 포함

  • 모든 입력에 대해 존재할 수 있는 모든 상호작용이 아닌, 모든 두개의 입력 간에 가능한 모든 상호작용만을 고려


  3-2. 페어와이즈 테스트

: 각 인자의 값(클래스)과 다른 인자의 값(클래스)을 최소한 한번은 조합

  • 가능한 모든 입력값들의 조합으로 테스트하는 것은 불가능하므로 모든 짝의 조합을 테스트하는 기법이다.
  • 242p. 08 문제 (틀린 것 고르시오)

  3-3. Base choice 테스트

: 기반이 되는 테스트 조합을 미리 선정하고,
기반 테스트에서 
하나의 인자에만 변경을 주어(나머지는 기반 테스트의 값으로 고정) 테스트케이스를 생성

 

  3-4. all combinations 테스트

: 모든 입력인자의 모든 가능한 클래스 조합이 테스트케이스에 포함

 

3-4. 결정표(결정 테이블)테스트

: 결정표를 이용하여 TC 설계

  • 결정표: 모든 조건과 조건들의 모든 가능한 조합에 취해야할 행위를 열거한 표

243p.09

242p.08

문제 확인 할 것


4. 상태 전이 테스트

: 시스템을 상태전이도로 모델링한 후 테스트케이스들을 상태전이도에서 체계적으로 선정

상태 전이 테스트(상태 의존적) ↔ 결정표 테스트(비의존)


4-1. 상태테스트

  • : 상태전이도의 모든 상태를 최소한 한번 방문→ 상태 방문

4-2. 단일전이테스트 (0-switch 테스트)

  • : 상태전이도의 모든 유효한 전이들을 최소한 한번 방문

4-3. all transition 테스트

  • 유효한 전이(0-switch 테스트)를 포함하여 유효하지 않은 전이들도 최소한 한번 방문

4-4. 다중전이테스트 (N-switch 테스트)

  •  상태전이도의 N+1개의 전이 시퀀스들을 최소한 한번 방문

제 11장 테스트 프로세스 개요

테스트 프로세스

큰 규모와 복잡성을 갖는 SW에게 효과적인 테스트 프로세스가 필요하다. 적절히 명세기반, 구조기반, 컴포넌트? 통합? 결정해야 한다.

보통 전체 개발 비용 중 30~50% 은 테스트가 차지한다.

 

Exercise 문제 옳은 것

  • 시간과 비용은 아껴야 한다.
  • 테스트 프로세스와 개발 프로세스는 함께 한다.
  • 테스트 프로세스 = 지속적 개선 필요

조직 테스트 프로세스 [범위 X]


테스트 관리 프로세스 3가지*

  1. 테스트 계획
    T 대상 범위 식별, 조직 테스트 프로세스로 전략 수립
  2. 테스트 모니터링 및 제어
    동적 테스트 프로세스의 수행 모니터링하고 필요 시 테스트 활동 제어
  3. 테스트 종료
    테스트 종료 후 생성된 산출물 관리, 테스트 환경 정리 및 종료 보고

테스트 관리 프로세스

테스트 계획 → 테스트 모니터링 및 제어 → 테스트 종료

 

테스트 관리 프로세스와 다른, 동적 테스트 프로세스

테스트 설계 및 구현 → 테스트 환경 구축 및 관리 → 테스트 실행결함 보고


동적 테스트 프로세스

https://almond0115.tistory.com/entry/CSTS-%EC%B5%9C%EC%A2%85-%EB%B9%88%EC%B6%9C-%EA%B0%9C%EB%85%90-%EC%A0%95%EB%A6%AC

  • 테스트 계획서에 따라 동적 테스트를 수행하기 위한 활동으로 구성
  • 설계 및 구현 활동 수행, 테스트 환경 구축, 테스트 실행, 검출된 결함 등록, 관리
  • 테스트 설계 명세서, 테스트 케이스 명세서, 테스트 절차 명세서, 환경 요건 명세서, 데이터 요건 명세서 작성, 테스트 환경 관리 보고서, 테스트 데이터 준비 보고서, 테스트 실행 로그 및 결함 보고서, 결함 추적 보고서 작성

1. 테스트 설계 및 구현 → 2. 테스트 환경 구축 및 관리 → 3. 테스트 실행 → 4. 결함 보고

 

1.  테스트 설계 및 구현

: 테스트 계획에서 식별된 테스트 범위와 전략에 따라 테스트 케이스 절차 등 개발

 

2. 테스트 환경 구축 및 관리

:  테스트 실행을 위한 테스트 환경과 테스트 데이터를 준비

 

3. 테스트 실행

: 테스트 절차를 실행, 결과를 기록

 

4. 결함 보고

: 실행 결과에 대한 분석으로 결함을 식별하고 기록


다음 중 동적 테스트 프로세스를 구성하는 활동으로 올바르지 않은 것은? 301.p Exercise

  1. 테스트 설계 및 구현 2. 테스트 환경 구축 및 관리 3. 테스트 실행 4. 테스트 모니터링 및 제어

테스트 산출물

* 그냥 내 방식대로 플로우 정리

 

조직 테스트 프로세스 아래

테스트 관리 프로세스가 있다.

테스트 관리 프로세스 안에 동적 테스트 프로세스가 있다.

테스트 관리 프로세스는 동적 테스트 프로세스를 활용, 모니터링하고 제어하고 종료한다.

 


제 12장 테스트 계획

테스트 컨텍스트(context) 명세

: 테스트 전략 수립 전 테스트 수행의 배경 요소를 식별하고 명세한다.

  1. 테스트 계획 유형 : 테스트 계획서대로 테스트 계획의 유형 작성
  2. 테스트 대상 : 테스트로 결함 검출, 품질 평가하고자 하는 대상, 명확하게 기술한다. (대상의 이름, 버전, 접근할 수 있는 위치 명시)
  3. 테스트 범위 : 테스트 대상의 기능/비기능 등의 특성, 테스트하고자 하는 피처 나열
  4. 가정 및 제약 사항 : 테스트에 반드시 고려하고 준수해야 하는 표준, 정책, 전략, 일정, 비용, 인력 등 기술
  5. 이해관계자 : 개발팀, 마케팅팀 등 테스트 관련 이해관계자 식별, 의사소통 방법 정의

📌 *컨텍스트 : 상황, 맥락, 문맥상의 컴퓨팅에서는 문맥 및 상황에 따라 이해되는 한 차원 높은 공간, 영역
*텍스트는 그냥 단순 단어, 정보


1. 테스트 계획 유형

프로젝트 테스트 계획

: 테스트 대상에 대한 전체 개별 테스트를 포함하는 종합적인 계획

 

개별 테스트 계획 - 레벨 테스트 계획

: 컴포넌트/통합/시스템/인수 레벨 테스트(컴통시인)의 수행에 대한 계획

개별 테스트 계획 - 유형 테스트 계획

: 기능 및 품질(성능, 신뢰성, 보안 등) 등 유형 테스트의 수행에 대한 계획


2. 테스트 대상

컴포넌트 테스트

: 시스템을 구성하는 서브 시스템, 컴포넌트, 클래스, 함수 등의 개별적인 요소

통합 테스트

: 시스템을 구성하는 각 요소 간의 연결 (서브 시스템 간, 컴포넌트 간, 클래스 간, 함수 간의 연결 등)

시스템, 인수 테스트

: 시스템 전체


Q. 다음중 테스트 계획서에 포함되지 않는 항목은? 347 P.

테스트 계획서 : 테스트 컨텍스트, 위험 분석, 테스트 전략, 테스트 수행 계획

오답 : 피처 집합 별 피처 목록 → 이것은 13장 테스트 설계 및 구현에 해당한다

 

Q. 다음 중 T 계획 수립할 때 테스트 컨텍스트를 설정하는 과정에 해당하지 않는 것은?

  1. 테스트 대상에 대한 테스트 완료 여부 결정하는 기준 정함
  2. 테스트 대상 및 범위 바탕으로 어떤 개별 테스트 수행할지 결정
  3. 테스트 대상의 미션 또는 미즈니스 목표 등 기술
  4. 각 테스트 레벨별로 초점을 두는 테스트 범위 다를 수 있음

1.번은 테스트 전략에 해당함

테스트 컨텍스트 : 구체적 테스트 전략 수립 전 테스트 수행의 배경 요소를 식별하고 명세한다.

완료 여부는, 테스트 컨텍스트 이후에 전략 수립할 때 정한다!


2. 위험 분석 [시험 범위 X]

: 위험요소를 식별하고, 분석하여 조치 계획을 수립 / 프로젝트, 제품 위험 관련한 것


3. 테스트 전략 수립

: 테스트를 효과적이고 효율적으로 수행하기 위한 다양한 전략을 결정

간단요약

  1. 개별 테스트: 프로젝트 테스트를 구성하는 개별 테스트
  2. 테스트 산출물
  3. 테스트 설계기법
  4. 테스트 환경요건: 테스트 실행을 위한 테스트 환경요소
  5. 테스트 데이터 요건: 테스트 실행 시 필요한 테스트 데이터
  6. 재테스팅 및 리그레션 테스팅: 재테스팅 및 리그레션 테스팅 방법
  7. 테스팅 중단 및 재시작 조건
  8. 테스트 메트릭: 테스트를 수행하면서 측정할 메트릭을 결정. (메트릭은 테스트 활동 수행과 결과를 정량적으로 판단하는데 사용)
  9. 테스트 완료 기준: 테스트 완료 여부를 판단할 기준 (충분한 테스트를 수행하였다고 판단할 수 있는 기준)
  10. 조직테스트 전략과의 차이점

각 항목 설명

https://snnchallenge.tistory.com/384

 

[CSTS 요약정리] 3. 테스트 프로세스

테스트 프로세스 개요 3문제 테스트 프로세스 테스트 관리 프로세스 조직 테스트 프로세스를 기반으로 테스트 프로젝트의 수행을 관리하기 위한 프로세스 테스트 수행 계획을 수립하고 계획에

snnchallenge.tistory.com

 

이 분 블로그를 참고하면 좋을 것 같습니다.

 

  • 컴포넌트의 테스트 완료 기준(느낌 외우기)
    1. 테스트 케이스(테스트 절차) 기반 기준: 90%의 TC가 통과, -TCS-10번과 TCS-20번 TC가 통과
    2. 테스트 커버리지 기반 기준: 95%의 문장 커버리지가 충족
    3. 결함 기반 기준: 2개이하의 결함만 허용,
    4. 심각한 결함이 존재하지 않아야 함 | | 10. 조직 테스트 전략과의 차이점 | 조직 테스트 전략과의 차이점과 근거 기술 |

Q. 다음 중 테스트 전략을 수립할 때 고려할 사항이 아닌 것은? 346.P

위험분석은 테스트 전략에 해당하지 않는다.** 4) 테스트 프로젝트에서 발생할 수 있는 위험을 식별하고 적절한 대처 방안…. X


테스트 수행 계획 수립 [범위 X]

  • 테스트 조직/인력 및 역할
  • 테스트 활동 및 일정
  • 의사소통

https://im-gu-ma.tistory.com/146

 

[CSTS] PART 03. 테스트 프로세스

11장 테스트 프로세스 개요테스트 프로세스 필요성소프트웨어 품질 목표 달성에 프로세스가 중요한 역할을 함효율적이고 효과적인 테스트 수행을 위한 관리의 중요성이 부각 됨주어진 시간과

im-gu-ma.tistory.com

 

나머지 범위는 이 분 블로그가 잘 되어있는 것 같아서 참고 하였습니다.

 

예쁘게 새로 그림을 직접 만드신 것 같습니다... 굿굿...!!

 

그럼 건승하시길

 

파이팅!