정보처리기사/소프트웨어 개발

테스트 시나리오와 테스트 기법

jhwannabe 2023. 7. 12. 10:42

테스트 시나리오

테스트 시나리오

  • 테스트 케이스를 적용하는 순서에 따라 여러 테스트 케이스의 집합으로서, 테스트 케이스의 동작 순서를 기술한 문서이며 테스트를 위한 절차를 정리한 문서
  • 테스트 순서에 대한 구체적인 절차, 사전 조건, 입력 데이터 등을 정리하여, 테스트 항목을 빠짐없이 수행할 수 있도록 함

테스트 시나리오 작성 시 유의점

  • 테스트 항목을 시스템별, 모듈별, 항목별 테스트 시나리오를 분리하여 작성
  • 고객의 요구사항과 설계 문서 등을 토대로 테스트 시나리오를 작성
  • 테스트 항목은 식별자 번호, 순서 번호, 테스트 데이터, 테스트 케이스, 예상 결과, 확인 등의 항목을 포함하여 작성

테스트 환경 구축

  • 개발된 응용 소프트웨어가 실제 운영 시스템에서 정상적으로 작동하는지 테스트할 수 있도록 하기 위하여 실제 운영 시스템과 동일 또는 유사한 사양의 하드웨어 소프트웨어, 네트워크 등의 시설을 구축하는 활동

테스트 환경 구축의 유형

하드웨어 기반 서버 장비(WAS, DBMS), 클라이언트 장비, 네트워크 장비 등의 장비를 설치하는 작업
소프트웨어 기반 구축된 하드웨어 환경에 테스트할 응용 소프트웨어를 설치하고 필요한 데이터를 구축하는 작업
가상 시스템 기반 물리적으로 개발 환경 및 운영 환경과 별개로 독립된 테스트 환경을 구축하기 힘든 경우에는 가상 머신 기반의 서버 또는 클라우드 환경을 이용하여 테스트 환경을 구축하고, 네트워크는 VLAN과 같은 기법을 이용하여 논리적 분할 환경을 구축할 수 있음

 

테스트 기법

화이트박스 테스트(White Box Test)

  • 모듈의 원시 코드를 오픈시킨 상태에서 코드의 논리적 모든 경로를 테스트하는 방법
  • Source Code의 모든 문장을 한 번 이상 수행하여 모듈 안의 작동을 직접 관찰할 수 있음
  • 산출물의 기능별로 적절한 프로그램의 제어 구조에 따라 선택, 반복 등의 부분들을 수행함으로써 논리적 경로를 점검함
  • 테스트 데이터를 선택하기 위하여 검증 기준(Test Coverage)을 정함
  • 테스트 데이터를 이용해 실제 프로그램을 실행함으로써 오류를 찾는 동적 테스트(Dynamic Test)에 해당

화이트박스 테스트 종류

  • 화이트박스 테스트 종류에는 기초 경로 검사, 제어 구조 검사 등이 있음
기초 경로 검사
(Basic Path Testing)
- Tom McCabe가 제안한 대표적 화이트박스 테스트 기법
- 테스트 케이스 설계자가 절차적 설계의 논리적 복잡성을 측정할 수 있게 함
- 측정 결과는 실행 경로의 기초를 정의하는데 지침으로 사용됨
- 기초 경로(Basic Path) : 제어 흐름 그래프를 분석하여 선형 독립 실행 경로 집합을 찾음
- McCabe의 순한 복잡도를 사용하여 선형 독립 경로 수를 결정한 다음 얻어진 각 경로에 대한 테스트 사례를 생성함
제어 구조 검사 - 조건 검사 : 프로그램 모듈 내에 있는 노리적 조건을 테스트하는 테스트 케이스 설계 기법
- 루프 검사 : 프로그램의 반복 구조에 초점을 맞춰 실시하는 테스트 케이스 설계 기법
- 데이터 흐름 검사 : 프로그램에서 변수의 정의와 변수 사용의 위치에 초점을 맞춰 실시하는 테스트 케이스 설계 기법

화이트박스 테스트 검증 기준

문장 검증 기준 소스 코드의 모든 구문이 한 번 이상 수행됨
분기 검증 기준 소스 코드의 모든 조건문이 한 번 이상 수행됨
조건 검증 기준 소스 코드의 모든 조건문에 대해 조건이 True인 경우와 False인 경우가 한 번 이상 수행됨
분기/조건 기준 소스 코드의 모든 조건문과 각 조건문에 포함된 개별 조건식의 결과가 True인 경우와 False인 경우 한 번 이상 수행됨

 

블랙박스 테스트(Black Box Test)

  • 소프트웨어가 수행할 특정 기능을 알기 위해 각 기능이 완전히 작동되는 것을 입증하는 테스트로 기능 테스트라고도 함
  • 요구사항 명세를 보면서 테스트, 주로 구현된 기능을 테스트함
  • 소프트웨어 인터페이스에서 실시되는 테스트

블랙박스 테스트 종류

  • 동치 분할 검사, 경계값 분석, 원인-효과 그래프 검사, 오류 예측 검사, 비교 검사 등이 있음
동치 분할 검사
(Equivalence Partitioning)
- 입력 자료에 초점을 맞춰 테스트 케이스를 만들고 검사하는 방법
- 입력 조건에 타당한 입력 자료와 그렇지 않은 자료의 개수를 균등하게 분할해 테스트 케이스를 설정함
원인-효과 그래프 검사
(Cause and Effect Graphing)
- 입력 데이터 간의 관계와 출력에 영향을 미치는 상황을 체계적으로 분석함
- 효용성이 높은 테스트 케이스를 선정해 검사함
오류 예측 검사
(Error Forecast)
- 과거의 경험이나 감각으로 테스트하는 기법
- 다른 테스트 기법으로는 찾기 어려운 오류를 찾아내는 보충적 검사 기법
비교 검사
(Comparison Testing)
동일한 테스트 자료를 여러 버전의 프로그램에 입력하고 동일한 결과가 출력되는지 테스트하는 기법
경계값 분석
(Boundary Value Analysis)
- 입력 자료에만 치중한 동치 분할 기법을 보완한 기법
- 입력 조건 경계값에서 오류 발생 확률이 크다는 것을 활용하여 경계값을 테스트 케이스로 선정해 검사함
- 분할의 경계 부분에 해당되는 입력값에서 결함이 발견될 확률이 경험적으로 높기 때문에 결함을 방지하기 위해 경계값까지 포함하여 테스트하는 기법

 

728x90
반응형