철저한 테스트 란 무엇입니까?
전체 테스트라고도 하는 전체 테스트는 팀의 모든 테스터가 소진되고 계획된 모든 테스트가 실행될 때 발생합니다. 모든 시나리오 또는 데이터가 테스트를 위해 테스트되는 품질 보증 테스트 기술입니다. 보다 이해하기 쉬운 방법으로 철저한 테스트는 테스트 단계가 끝날 때 발견되지 않은 결함이 없는지 확인하는 것을 의미합니다. 사소한 경우를 제외하고는 모든 것(입력 및 전제 조건의 모든 조합)을 테스트하는 것은 불가능합니다. 테스터로서,우리는 종종”글쎄,나는 테스트를위한 충분한 시간이 없다”고 말합니다. 이 세상에서 모든 시간을 가졌을지라도 가능한 모든 입력 조합과 출력 조합을 테스트 할 충분한 시간이 없을 것입니다.
철저한 테스트가 비실용적이고 불가능한 이유는 무엇입니까?
완전한 테스트 또는 철저한 테스트를 수행 할 수 없습니다. 대부분의 시스템의 경우 다음과 같은 이유로 인해 거의 불가능합니다:
- 프로그램의 가능한 입력 영역이 너무 커서 시스템 테스트에 완전히 사용할 수 없습니다. 유효한 입력과 잘못된 입력이 모두 있습니다.
- 이 프로그램은 많은 수의 상태를 가질 수 있습니다. 입력에 타이밍 제약이 있을 수 있으며,즉 입력은 특정 시간에 유효하고 다른 시간에 유효하지 않을 수 있다. 유효하지만 제대로 시간 초과되지 않은 입력 값을 부적당 한 입력이라고합니다.
- 시스템의 입력 도메인은 매우 커서 프로그램 테스트에 완전히 사용될 수 있습니다.
- 설계 문제가 너무 복잡하여 완전히 테스트할 수 없습니다. 설계에는 암시 적 설계 결정 및 가정이 포함될 수 있습니다. 예를 들어,프로그래머는 전역 변수 또는 정적 변수를 사용하여 프로그램 실행을 제어 할 수 있습니다.
- 시스템의 가능한 모든 실행 환경을 만들 수는 없습니다. 이것은 소프트웨어 시스템의 동작이 날씨,온도,고도,압력 등과 같은 실제 외부 세계에 의존 할 때 더욱 중요합니다.
철저한 테스트 예제
예제 1:
예 도구>고급 옵션 창
조건의 가능한 조합:
예 2:
다음과 같은 기능을 가진 전자 상거래 사이트를 보자:
- 로그인
- 제품 선택
- 색상으로 제품 필터링
- 가격으로 제품을 필터링합니다.
- 제품 구매(지불 포털)
위험 식별 매개 변수를 기반으로 사용자는 테스트 계획에 포함 할 매트릭스를 만들 수 있습니다. 우리는 위험이 높은 영역을 식별 할 수있는 올바른 방법을 가질 수 있도록 각 매개 변수는 점수를 부여 할 수 있습니다.
- 비즈니스에 미치는 영향:1-10
- 실패 확률:1-10
- 회귀: 1-5
- 복구:1-5
위의 예제에 대한 행렬을 만들어 보겠습니다:
기능 | 비즈니스에 미치는 영향 | 실패 확률 | 회귀 | 복구 |
로그인 | 10 | 3 | 1 | 1=15 |
컬러 필터가있는 제품 선택 | 5 | 5 | 2 | 2=14 |
가격 필터가 있는 제품 선택 | 8 | 5 | 2 | 2=17 |
쇼핑 카트에 담기 | 10 | 8 | 3 | 4=25 |
구매 제품 | 10 | 7 | 2 | 2=21 |
그래서 점수에 따라 우리는”가장 높은 위험 영역”에 대한 가장 중요한 경쟁자로 기능을”장바구니에 추가”그래서 지금 우리는 테스트의 우선 순위를 지정할 수 있습니다. 우리는 또한 품질 보증 팀이 거의 철저한 테스트를 수행하는 데 필요한 기능을 결정할 수 있습니다.
품질 보증 팀은 자신의 점수를보고 위험 완화 계획을 간소화 할 수 있습니다
- 점수 1-5:-단위 테스트 및 리뷰.
- 점수 5-10:-단위 테스트+블랙 박스 테스트(회귀 및 높은 비즈니스 영향 영역)
- 점수 10-15:-깊이가 제한된 일반적인 테스트 유형.
- 점수 15-25:-특정 테스트 유형에 깊이있는 일반적인 테스트 유형.
- 점수 25-30:-고위험 지역. 모든 테스트 유형에 대한 완벽한 적용 범위 및 심층 테스트.
위에서 언급 한 방법에 따라 점수가 25 이상인 영역은 매우 높은 위험 영역으로 간주되어야하며 거의 철저한 테스트를 수행해야합니다.따라서 위의 예에서”장바구니에 추가”는 모든 테스트 유형에 대한 심층 테스트를 구현해야하며 철저한 테스트를 수행해야합니다.