IT recording...
[SoftwareV&V] 14. Model-Based Testing 본문
[원문링크]
[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이 포함됨
-
- Node adequacy Criteria (Statement)
-
- Branch adequacy Criteria
- ?? 근데 그러면 위에 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