루프 테스트란 무엇입니까? 방법론, 예
루프 테스트란 무엇입니까?
루프 테스트는 루프 구성의 유효성에 전적으로 초점을 맞춘 소프트웨어 테스트 유형으로 정의됩니다. 이는 제어 구조 테스트(경로 테스트, 데이터 유효성 테스트, 조건 테스트)의 일부 중 하나입니다.
루프 테스트는 화이트 박스 테스트. 이 기술은 프로그램의 루프를 테스트하는 데 사용됩니다.
테스트된 루프 유형
테스트된 루프 유형의 예는 다음과 같습니다.
- 단순 루프
- 중첩 루프
- 연결된 루프
- 구조화되지 않은 루프
루프 테스트를 수행하는 이유는 무엇입니까?
루프 테스트는 다음과 같은 이유로 수행됩니다.
- 테스트를 통해 루프 반복 문제를 해결할 수 있습니다.
- 루프 테스트를 통해 성능/용량 병목 현상을 밝힐 수 있음
- 루프를 테스트하면 루프의 초기화되지 않은 변수를 확인할 수 있습니다.
- 루프 초기화 문제를 식별하는 데 도움이 됩니다.
루프 테스트 수행 방법: 완전한 방법론
루프를 테스트하는 동안 세 가지 다른 수준에서 확인해야 합니다.
- 루프가 입력되면
- 실행 중 및
- 루프가 남을 때
이러한 모든 루프에 대한 테스트 전략은 다음과 같습니다.
단순 루프
간단한 루프는 다음과 같은 방법으로 테스트됩니다.
- 전체 루프 건너뛰기
- 루프를 1번 통과시킵니다.
- 루프를 2번 통과시킵니다.
- 루프를 통과하는 패스를 만듭니다.
- b, b-1을 만든다; b+1은 루프를 통과합니다. 여기서 "b"는 루프를 통과할 수 있는 최대 허용 횟수입니다.
중첩 루프
중첩 루프의 경우 다음 단계를 따라야 합니다.
- 다른 모든 루프를 최소값으로 설정하고 가장 안쪽 루프에서 시작합니다.
- 가장 안쪽 루프의 경우 간단한 루프 테스트를 수행하고 외부 루프를 최소 반복 매개변수 값으로 유지합니다.
- 다음 루프에 대한 테스트를 수행하고 바깥쪽으로 작업합니다.
- 가장 바깥쪽 루프가 테스트될 때까지 계속합니다.
연결된 루프
연결된 루프에서 두 루프가 서로 독립적인 경우 간단한 루프를 사용하여 테스트하거나 중첩 루프로 테스트합니다.
그러나 한 루프의 루프 카운터가 다른 루프의 초기 값으로 사용되면 독립 루프로 간주되지 않습니다.
구조화되지 않은 루프
구조화되지 않은 루프의 경우 구조화된 프로그래밍 구성의 사용을 반영하도록 설계를 재구성해야 합니다.
루프 테스트의 한계
- 루프 버그는 주로 낮은 수준의 소프트웨어에서 나타납니다.
- 루프 테스트 중에 확인된 버그는 그다지 미묘하지 않습니다.
- 많은 버그는 다음을 통해 감지될 수 있습니다. 운영 체제 따라서 메모리 경계 위반, 감지 가능한 포인터 오류 등이 발생합니다.
요약
- 소프트웨어 엔지니어링에서 루프 테스트는 백 Box 지원. 이 기술은 프로그램의 루프를 테스트하는 데 사용됩니다.
- 루프 테스트를 통해 성능/용량 병목 현상을 밝힐 수 있음
- 루프 버그는 주로 낮은 수준의 소프트웨어에서 나타납니다.