논리적 적용 범위의 여러 가지 방법과 그 차이점을 간략하게 설명하십시오.
일반적인 논리 적용 방법은 다음과 같습니다.
1. 명령문 적용 범위: 가장 일반적인 적용 방법입니다. 프로그램 내의 코드가 실행되는지 테스트하는 것이 목적이지만 헤더 파일, 주석, 빈 줄 등을 제외하고 코드 내의 실행 문만 고려합니다. 다중 분기 프로그램에서는 경로의 각 명령문이 적어도 한 번 실행되도록 특정 경로만 다룰 수 있습니다. 그러나 이는 다양한 분기 조합을 무시합니다.
2. 결정 적용 범위: 분기 적용 범위라고도 하는 원칙은 테스트 프로세스 중에 각 결정이 적어도 한 번은 참 값을 가지며 거짓 값을 갖도록 충분한 테스트 사례를 설계하는 것입니다. 의사결정 커버리지는 문장 커버리지보다 더 강력한 테스트 기능을 갖고 있지만 여전히 문장 커버리지와 동일한 단일성을 갖고 있습니다.
3. 결정-조건 커버리지: 결정문에 있는 모든 조건의 가능한 값이 한 번 이상 나타나며, 동시에 가능한 결과도 나올 수 있도록 충분한 테스트 케이스를 설계해야 합니다. 모든 결정문 중 적어도 한 번은 나타납니다.
4. 판정 조건 적용 범위 수정: 각 프로그램 모듈의 진입점과 종료점은 적어도 한 번은 호출되는 것으로 간주되어야 하며, 각 프로그램의 판정은 가능한 모든 결과로 적어도 한 번 변환되어야 합니다. 프로그램의 결정은 논리 연산자(and, or)로 연결된 bool 조건으로 분해되며 각 조건은 결정의 결과 값과 독립적입니다.
5. 경로 적용 범위: 각 경로를 최소 한 번 이상 실행합니다. 아래로 내려갈수록 보장 범위가 높아집니다.
여러 논리적 적용 방법의 차이점
1. 명령문 적용: 목표는 프로그램의 모든 실행 가능한 명령문이 적어도 한 번 실행되도록 하는 것입니다. 일부 조건 조합의 경우 모든 테스트 경로를 완전히 포함하지 못할 수도 있습니다. 결정 적용 범위: 목표는 프로그램의 각 판단에 대한 참 분기와 거짓 분기가 적어도 한 번 실행되도록 하는 것입니다. 그러나 이 방법은 모든 테스트 경로를 완전히 포괄할 수 없는 경우가 많습니다.
2. 조건 적용 범위: 각 판단에서 각 조건의 가능한 값이 적어도 한 번 충족되도록 하는 것이 목표입니다. 이 방법도 모든 판정 결과를 고려할 수는 없습니다. 수정된 조건부 결정 적용 범위: 이 방법을 사용하려면 각 결정이 올바르게 처리될 수 있도록 많은 수의 테스트 사례를 설계해야 합니다. 경로 적용 범위: 목표는 모든 프로그램 경로가 최소한 한 번 실행되도록 하는 것입니다. 이 방법은 프로그램의 논리적 경로를 종합적으로 테스트할 수 있지만, 많은 수의 테스트 케이스를 설계해야 하는 경우가 많습니다.