소프트웨어 신뢰성 시험
소프트웨어가 일으킬 수 있는 결함을 식별하는 시험으로 정적시험과 동적시험으로 구성된다.
동적 시험 Dynamic Testing
소프트웨어를 실제 하드웨어(Target)에 탑재한 상태에서 소프트웨어통합시험절차서(STD)에 기술된 시험절차에 따라 요구사항기반으로 Code Coverage(실행률)을 점검하는 것을 말한다.
동적 시험 종류와 기준 설정
Code Coverage는 전체 소스 코드에서 시험된 코드를 백분률(%)로 나타낸 것이며, 그 종류는 시험 수준에 따라 Statement Coverage, Branch Coverage, MC/DC (Modified Condition/Decision) Coverage로 구분된다.
이 중 Statement 가 가장 기본적인 수준이고, Branch가 중간, MC/DC가 가장 높은수준의 시험이다.
시스템의 결함 발생빈도, 영향성 및 제어가능성 등 안정성 평가를한 후 수준별로 Coverage Testing 종류를 설정한다.
- DO-178에서 설계보증레벨(DAL : Design Assurance Level)에 따른 Coverage 기준
동적 시험 기준
설정된 시험종류(Statement, Branch, MC/DC)에 대한 코드 실행률을 100% 달성하여야 하며, 협의 된 예외사항(방어코드 등)은 제외할 수 있다.
동적 시험 종류
1. Statement Coverage
소스 코드내의 문장 중 동적 시험간 적어도 한 번 이상 시험된 문장의 비율(%)
2. Branch Coverage
소스 코드내의 분기문 중 동적 시험간 참(True), 거짓(False)이 적어도 한 번 이상 시험된 비율(%)
3. MC/DC (Modified Condition/Decision) Coverage
소스 코드내 분기문에 있는 모든 조건식 중 개별 조건식의 독립적인 변화가 분기문의 참, 거짓에 영향을 미치는 모든 조합에 대해 동적 시험간 적어도 한 번 이상 시험된 비율(%)
'지식창고 > IT 지식' 카테고리의 다른 글
형상관리 주요 용어 (0) | 2023.08.14 |
---|---|
왜 Windows 만 path 구분자로 Backslash를 사용할까 (0) | 2023.07.11 |
시맨틱 버저닝 (Semantic Versioning) (0) | 2023.05.28 |
데이터 크기 단위와 네트워크 속도 표기, MBps <-> Mbps 변환 (0) | 2023.05.07 |
저장장치 클러스터 크기 확인법 (0) | 2023.03.31 |