반응형

2022.07.15 - [지방대 출신 초봉 4천받기/도움되는 자격증 (ISTQB CTFL)] - ISTQB CTFL 요점정리 7) Test 도구 2. 동적테스팅(설계 및 분류)

 

ISTQB CTFL 요점정리 7) Test 도구 2. 동적테스팅(설계 및 분류)

참고) Dynamic Testing(동적 테스팅) : SW를 실제 구동시켜가며 하는 테스팅. 외부에서 보이는 동작에 초점을 맞추고 있다. 1. 테스트 설계 1) 테스트 개발 프로세스 (ISO/IEC 29119) : 다음 3가지 관점으로

p-backup.tistory.com

 명세기반 기법(Black box Test)

 

  1) 동등분할(Equivalence Partitioning) : 동일집합에서 어떤 값을 사용하더라도 같은 결과가 나오는 것에 사용됨. 주로 중간 값을 대표값으로 하나 뽑아 T/C를 짜며, 이때 유효하지 않은 입력데이터도 T/C에 포함 할 수 있다.

 

  2) 경계값 분석(Boundary Value Analysis) : 입력값의 주요 오류대상인 경계값(해당 분할 영역의 최대/최소값)T/C로 선정하는 기법.

참고) 동등분할 및 경계값 분석 기법의 한계 : 입력범위를 동등분할 하여 제한하더라도 입력값 조합의 수가 테스트 가능한 수를 넘어가는 경우가 많다. 또, 입력 조합이 상호간에 독립적(의존성이 없는)이라는 가정에서만 적합하다.
참고) 동등분할 및 경계값 분석은 모든 테스트 유형, 모든 테스트 레벨에서 적용이 가능하다.

Ex)

  3) 결정 테이블 테스팅(Decision Table Testing)

    -. 개념 : 시스템 요구사항/비즈니스 로직 등에서 원인과 결과를 분석하여 T/C를 조합해 내는 방법

    -. 장점 : 논리적으로 의존적인 가능한 모든 조건들의 조합을 뽑아 낼 수 있어 촘촘한 Test가 가능하다. 또한 요구사항이나 Test basis의 문제점을 드러나게 한다.

    -. 단점 : 작성에 많은 노력과 시간이 소요될 수 있고 실수의 여지가 있다.

 

Ex) 결정 테이블 테스팅 예제.

     Specification ① 사람들에게 50만원 배당한다.

     Specification ② 직업이 있고 나이가 40세 이상이면 10만원을 추가 배당한다.

     Specification ③ 직업이 없는 사람이 3자녀 이상이면 5만원을 추가 배당한다.

  T/C1 T/C2 T/C3 T/C4 T/C5 T/C6 T/C7 T/C8
Case
3가지
직업 T T T T F F F F
연령 T T F F T T F F
자녀 T F T F T F T F
Effect
3가지
50만원 V V V V V V V V
10추가 V V            
5추가         V   V  
기대 결과 60 60 50 50 55 50 55 50

 

  4) 상태전이 테스팅 기법(State Transition Testing) : 시스템을 상태전이 다이어그램으로 표현하고, 이를 바탕으로 T/C를 도출하는 기법

    -. 특징 : 이벤트, 액션, 활동, 상태, 상태전이 사이의 관계를 집중하는 테스팅 기법으로, 시스템/SW가 현재 조건이나 기존 이력에 따라 이벤트가 다르게 반응 할 때

       모든 상태/이벤트 조합을 확인 할 수 있어 사용된다.

    -. 절차 : ①상태전이 다이어그램에서 ②상태-이벤트 테이블을 만든 후, ③이를 근거로 전이트리를 그려 유효한 모든 전이를 표현한다. 그리고 전이트리의 경로(Path)를 파악해 ④유효한 테스트 케이스, ⑤비유효한 테스트 케이스, ⑥가드(조건)테스트 케이스를 순서대로 작성한다. 그 후 완성된 테스트 케이스를 효율적으로 실행하기 위해 ⑦테스트 프로시저 또는 스크립트를 구성한다.

    -. 구성 : State(상태) : 하나 또는 그 이상의 이벤트를 기다리는 시스템의 모드

                 Transition(전이) : 이벤트에 의해 한가지 상태에서 다른 상태로의 변경

                 Event(이벤트) : 상태의 전이를 유발하는 행위 또는 요인

                 Guard(가드) : 이벤트가 발생하는 조건. 보통 ^로 표기한다

                 Action(액션) : 상태의 전이에 따른 유발되는 동작

    -. 중요 : T/C를 구성할 때 Valid caseInvalid case를 모두 뽑아 T/C를 짜야 한다.  Ex)

 

  5) Use Case Testing : 시스템의 동작이나 비즈니스 시나리오를 명세하고 이를 기반으로 T/C를 도출하는 기법. 요구사항 시나리오가 실행되기 위한 특정조건(Condition)을 식별함으로써, 각 시나리오로 부터 T/C를 추출한다. 서로 다른 컴포넌트들의 상호작용이나 간섭으로 발생하는 통합 결함을 찾는데 도움이 된다. 유즈케이스 이벤트의 흐름을 어떻게 구조화 하고 조직하고 작성해야 하는지는 정의되어 있지 않다. 따라서 유즈케이스 표현 자체가 정확하지 않고 일관성이 낮을 수 있다.

 

Ex) 현금인출기 라면 Condition은 현금출금, 현금인출, 계좌이체, 개시 및 종료 등이 될 것이다. 이때 주류 시나리오(Basic flow)와 대체 시나리오(Alternative flow)를 도출하고 시나리오 구성 후 T/C화 한다.

 

  6) Pair-Wise Testing : 커버해야 할 기능적 범위에 비해 상대적으로 적은 양의 테스트 세트를 구성 할 때 사용하는 기법으로, 대부분의 결함이 2개 요소의 상호작용에 기인한다는 것에 착안하여 2개 요소의 모든 조합을 T/C로 도출하는 방식.

Ex) F1, F2, F3 3가지 요소가 각각 True/Fail 두 가지 입력조건만 갖는다고 할 때 F1 F2 / F2 F3 / F1 F3간의 True/Fail입력조건에 빠짐이 없도록 T/C를 구성하면 된다. 아래 표와 같고 이를 정리하면 우측표와 같다.

반응형

+ Recent posts