전체 글 70

9장 구조 기반 테스트 - 9.6 조건 테스트

9.6 조건 테스트DO-178B에 따르면조건: 논리 연산자(and, or)를 포함하지 않은 boolean 식결정: 이러한 조건들이 논리 연산잘르 사용하여 구성된 boolean 식 그러나 switch문과 같이 true, false가 아닌 여러 값을 가질 수도 있기 때문에 반드시 boolean식으로 한정하진 않음if (x>0 && y x>0과 y➡️ 관계 연산자(=, > 결정 테스트 요건을 만족하는 테스트 집합 - true와 false가 되는 경우를 모두 실행했음그러나 조건 y➡️ 조건 테스트는 모든 조건이 true가 되는 경우, false가 되는 경우를 테스트 집합으로 사용해야 함 조건 커버리지 조건 테스트와 결정 테스트의 관계결정 테스트의 테스트 집합으로 조건 테스트를 만족할 수 없음조건 테스트의 ..

9장 구조 기반 테스트 - 9.5 결정 테스트

9.5 결정 테스트문장 테스트는 더 적은 개수의 테스트 케이스로 쉽게 만족할 수 있지만 모든 경우의 수를 검증하지 못 한다는 단점이 있음결정 테스트는 모든 결정문의 결과가 참이 되는 경우와 거짓이 되는 경우를 최소 한 번씩은 실행하는 테스트 (1) 테스트 대상 프로그램에 해당하는 제어 흐름 그래프를 작성 (2) 참과 거짓을 한 번씩은 사용하는 경로 집합을 식별이러한 경로 집합은 유일하지 않으며 여러 개 존재할 수 있음 ex) TS = { , } (3) 입력 데이터와 기대 출력을 식별 (4) (2)-(3)을 모든 결정의 결과가 실행 될 때까지 반복 결정 커버리지테스트 케이스 집합에 의해 결정 테스트가 어느 정도 이루어졌는지 정량적으로 알 수 있음 문장 테스트와 결정 테스트의 관계테스트 요건 간의 관..

9장 구조 기반 테스트 - 9.4 문장 테스트

9.4 문장 테스트프로그램의 모든(실행 가능한) 문장을 최소한 한 번은 행하도록 요구 (1) 테스트 대상 프로그램의 제어 흐름 그래프 작성 (2) 모든 블록을 실행할 수 있는 경로 집합을 작성 실행 가능한 경로P1 = P2 = P3 = P4 = 모든 블록을 실행할 수 있는 경로 집합1개{ P4 }2개{ P2, P3 }3개{ P1, P2, P3 } (3) 입력 데이터와 기대 출력을 식별프로그램을 실행했을 때 기대 출력이 10이 아닐 경우 프로그램에 결함이 있음을 알 수 있음 문장 커버리지 테스트 케이스 집합에 의해 문장 테스트가 어느 정도 이루어졌는지 정량적으로 알 수 있음

9장 구조 기반 테스트 - 9.3 구조 기반 테스트의 이해

9.3 구조 기반 테스트의 이해가장 이상적인 구조 기반 테스트는 프로그램의 모든 경로를 최소한 한 번은 실행하여 테스트하는 것그러나 경로가 엄청나게 많이 존재할 수 있기 때문에 현실적으로 불가능따라서 일부 경로만 테스트하는 방법을 사용 종류문장 테스트분기 테스트조건 테스트다중 조건 테스트MCDC 및 자료 흐름 테스트

9장 구조 기반 테스트 - 9.2 제어 흐름 그래프

9.2 제어 흐름 그래프제어 흐름 그래프는 프로그램 구조를 매우 효과적으로 나타낼 수 있는 수단일반적으로 구조 기반 테스트를 수행할 때 우선 제어 흐름 그래프로 나타낸 다음 테스트 케이스를 추출 기본 블록단일 진입점과 단일 진출점을 가진 일련의 연속적인 실행 가능한 문장들의 집합기본 블록의 문장들은 모두 함께 실행되거나 함께 실행되지 않음제어 흐름 그래프의 노드 = 박스로 표시 제어 흐름기본 블록 간의 실행 순서제어 흐름 그래프의 간선 = 화살표로 표시 ex)기본 블록 식별6번 문장이 실행된 후 3번 문장으로 돌아가기 때문에 (1, 2)와 3은 동일한 블록에 포함될 수 없음4번 문장의 경우, 참일 때 진출점과 거짓일 때 진출점이 다르기 때문에 3번 문장과 동일한 블록에 포함될 수 없음 제어 흐름 추가 ..