IT recording...

[SoftwareV&V] 14. Model-Based Testing 본문

V&V

[SoftwareV&V] 14. Model-Based Testing

I-one 2022. 2. 17. 16:23

[원문링크]

https://adorable-aspen-d23.notion.site/SoftwareV-V_14_Model-Based-Testing-b24f4f12e3b44aa59ec6a1a5b2624714

 

SoftwareV&V_14_Model-Based Testing

Model-Based Testing

adorable-aspen-d23.notion.site

[2021 - 1학기 수강한 Software V&V 강의 정리본입니다.]

(Software Verification & Validation)

 

Model-Based Testing

1. Model-Based Testing

  • Brute Force Testing , Category Partitioning Testing 외에 Model based Testing이 존재
  • Independently Testable Feature(카테고리)를 뽑아낸 후
  • spec을 읽고 수동으로 모델 생성하기
  • (Finite State Machine, Grammar, Algebraic Specification, Logic Specification, Control/Data Flow Graph)

1) Finite State Machine

: FSM > Execution Tree로 변환

: All state coverage, All structural(Transition) coverage 를 사용해서 test case 뽑아내기

  • All transition : 모든 execution 경우를 다 지남
  • All state : 모든 execution 노드를 다 지남

2) Decision Structures

: Condition Action table을 그린 후 combination > MC/DC 순으로 복잡하면 condition을 변경시켜가며 실행한다.

3) Control/Data Flow Graph

: statement/condition(Decision) coverage를 사용해서 test case 뽑아내기

(반자동으로 systematic하게)

  • node에 spec이 포함됨
    1. Node adequacy Criteria (Statement)
    1. Branch adequacy Criteria
    (condition은 애매, spec의 조건문이 좀 애매하기 때문)
  • ?? 근데 그러면 위에 Decision structure에서 combination , MC/DC 이거는 어케 하는겨?

4) Grammars

: 컴파일 언어로 변경해서 가능

2. 특징

  • Model을 만들기 좋은 경우
    • category partitioning을 수행하는 load보다 model based testing을 수행하는 load가 더 적을 때 사용

** 예상문제) Model based testing을 더 하기 좋은 때는 언제인지 예시를 들어 설명하시오

  • 보통 decision table을 많이 쓰고, Flow graph는 잘 쓰지 않는다.
  • System, unit, integration 다 사용가능하다. (spec based testing이기 때문)

'V&V' 카테고리의 다른 글

[SoftwareV&V] 17. Test Execution  (0) 2022.02.17
[SoftwareV&V] 16. Falut-Based Testing  (0) 2022.02.17
[SoftwareV&V] 13. Data Flow Testing  (0) 2022.02.17
[SoftwareV&V] 12. Structural Testing  (0) 2022.02.17
[SoftwareV&V] 11. Combinational Testing  (0) 2022.02.17
Comments