how write complex business logic test scenarios using decision table technique
의사 결정 테이블 테스트는 복잡한 비즈니스 로직에 대한 테스트 시나리오를 식별하기위한 쉽고 확실한 접근 방식입니다. .
몇 가지 테스트 케이스 디자인 기술이 있습니다. 이 기사에서는 사용 방법을 배웁니다. 의사 결정 테이블 기법 효과적으로 테스트 케이스 작성 복잡한 비즈니스 로직이있는 애플리케이션 용.
다음은 그림입니다.
우리 모두는 비즈니스의 규칙과 검증이 고객이 제공하는 요구 사항의 대부분을 차지한다는 것을 알고 있습니다. 이러한 요구 사항이 비즈니스 분석가 또는 고객에 의해 전체 프로젝트 팀에 어떻게 표현되고 전달되는지 관찰하면서 우리는 그러한 비즈니스 규칙과 논리의 대부분이 논리적 프로세스 흐름 다이어그램에 표시된다는 것을 알게됩니다.
복잡한 요구 사항에 대한 논리적 프로세스 흐름도는 많은 분기, 노드 및 의사 결정 상자로 구성됩니다. 바라건대, 우리 테스터는 이러한 모든 가지를 다루고 복잡한 논리 트리의 구석 구석 구석을 만져야합니다. 나는 또한 복잡한 비즈니스 흐름에 직면했고 프로세스를 더 쉽게 만들기 위해 많은 테스트 사례 / 테스트 시나리오 준비 기술을 시도했습니다.
마지막으로, 의사 결정 테이블 테스트 기술이이 측면에서 매우 유용하다는 것을 알았습니다. 다음은 의사 결정 테이블 기술이 복잡한 비즈니스 로직에 대한 테스트 시나리오 준비를 더 쉽게 만드는 방법입니다.
예 : 의사 결정 테이블 기법을 사용하여 로그인 화면에 대한 테스트 케이스 작성 :
가자 의사 결정 테이블 예 로그인 화면에 대한 아래의 비즈니스 요구 사항 중.
버블 정렬 배열 C ++
그림 : 1.0 샘플 비즈니스 흐름도
첫 번째 단계는 모든 지점의 이름을 지정하고 아래와 같이 숫자 또는 알파벳으로 남겨 두는 것입니다.
1, 2, 3은 잎이고 a, b & c는 가지입니다.
그런 다음 아래와 같이 의사 결정 테이블을 만들어야합니다. (이미지를 클릭하면 확대됩니다)
그림 1.1 비즈니스 흐름에 대한 결정 테이블 그림 1.0
학습 내용 :
기억해야 할 사항
- 결정 상자에 지정된 모든 유효성 검사는 테이블의 열로 이루어져야합니다.
- 순서도에 언급 된 모든 결과 (잎)는 결정 테이블에 포함되어야합니다.
- 특정 결과를 얻기 위해 필요한 모든 입력 조합은 조합 열에 언급되어야하며 테스트 케이스를 작성하는 동안 포함될 수 있습니다.
- 의사 결정 테이블을 완성한 후에는 논리적 트리의 모든 가지와 잎이 덮여 있는지 확인하기 만하면됩니다.
의사 결정 테이블 기법 사용의 장점
#1) 다이어그램으로 표현 된 복잡한 비즈니스 흐름은이 기술에서 쉽게 다룰 수 있습니다.
#두) 테스트 케이스에 대한 빠른 신뢰를 제공합니다. 자신감을 얻기 위해 자신의 테스트 케이스를 여러 번 검토 할 필요가 없습니다.
#삼) 이해하기 쉬운. 누구나이 의사 결정 테이블 템플릿에서 테스트 케이스를 만들 수 있습니다.
# 4) 테스트 케이스 및 테스트 시나리오에 대한 재 작업은 첫 번째 샷에서 완전한 커버리지를 제공하므로 완전히 피할 수 있습니다.
의사 결정 테이블 기술 사용의 한계
#1) 경계 값 분석, 등가 분할과 같은 특정 테스트 케이스 준비 기술은이 템플릿에서 직접 수용 할 수 없습니다. 그러나 조합 열에 기록하고 테스트 케이스를 작성하는 동안 사용할 수 있습니다.
Eclipse에서 svn 플러그인을 설치하는 방법
다른 테스트 케이스 작성 기술이 의사 결정 테이블만큼 정확성을 보장 할 수없는 이유를 설명하기 전에 다른 블랙 박스 과 흰색 상자 테스트 케이스 작성 기술.
기타 테스트 케이스 설계 기법
#1) 경계 값 분석 테스트 케이스가 대표자를 포함하도록 설계된 소프트웨어 테스팅 기술입니다. 경계 값 주어진 범위 안팎.
#두) 등가 분할 또한 호출 등가 클래스 분할 주어진 조건을 파티션으로 나누고 테스트를 위해 각 파티션에서 하나의 입력 데이터를 선택할 수있는 소프트웨어 테스트 기술입니다.
#삼) 상태 전이 테스트 제한된 수의 상태를 획득하고 특정 이벤트시 한 상태에서 다른 상태로 전환 할 수있는 시스템의 테스트 케이스를 설계하는 데 사용할 수있는 블랙 박스 테스트 기술입니다.
# 4) 추측 오류 테스터의 경험을 사용하여 오류 또는 오류를 찾을 가능성이 가장 높은 응용 프로그램의 일부를 찾는 기술입니다. 이것은 규칙이없는 기술 기반 기술입니다.
# 5) 사용 사례 테스트 이 기술에서 사용 사례 / 시나리오는 테스트 사례를 작성하는 데 사용됩니다. 사용자와 시스템의 상호 작용은 사용 사례에 설명되어 있습니다.
더 많은 테스트 디자인 기술 :
# 6) 진술 범위
# 7) 조건 적용
# 8) 탐색 적 테스트
비즈니스 로직에 대한 다른 테스트 케이스 설계 기술이 의사 결정 테이블로 유용하지 않은 이유는 무엇입니까?
#1) 경계 값 분석 및 등가 클래스 분할은 숫자 범위 및 길이를 의미합니다. 이 두 가지 기술만으로는 비즈니스 규칙에 대한 100 % 테스트 범위를 보장 할 수 없습니다.
#두) 오류 추측은 경험에 관한 것입니다. 경험이 필요하지만 모든 것이 증명 될 수는 없습니다.
Windows 10 용 프리웨어 레지스트리 클리너
#삼) State Transition 테스트 기술을 사용하면 논리 트리의 모든 부분이 포함되는지 확인할 수 있지만 의사 결정 테이블 기술이 의사 결정 테이블을 포함하도록 보장하므로 문서 또는 아티팩트를 제안하지 않습니다 (그림 1.1).
결론
비즈니스 로직에 대한 테스트 케이스를 작성하려면 아래를 따르는 것이 좋습니다. 최대 테스트 커버리지를 보장하기 위해 테스트 케이스를 준비하는 단계 :
1 단계) 사용하다 의사 결정 테이블 테스트 케이스 설계 기법 100 % 논리적 커버리지를 달성합니다.
2 단계) 다양한 입력 범위를 포괄하기위한 경계 값 분석 및 동등성 분할.
3 단계) 필드 수준 유효성 검사를위한 조합 및 순열 (모든 순열이 필요한 것은 아님).
4 단계) 최종 터치 경험으로 오류 추측 (위의 세 단계에서 식별 할 수있는 오류는 제외)
이 모든 기술의 올바른 조합으로 거의 모든 것을 발견 할 수 있기를 바랍니다. 테스트 시나리오 테스트중인 모든 애플리케이션에 대해.
저자 정보 : Hari Narayan은 복잡한 비즈니스 로직에 대한 테스트 시나리오 작성에 3 년 이상의 경력을 가진 소프트웨어 테스트 전문가입니다. 그는 현재 Plintron Global Technologies에서 일하고 있습니다.
프로젝트에서 가장 자주 사용하는 테스트 케이스 설계 기술을 알려주십시오. 그리고 당신의 경험에 따르면 가장 좋은 방법은 무엇입니까?
이 기사에 대한 귀중한 의견 / 제안을 자유롭게 공유하십시오.