Certificate/정보처리기사

[2과목 소프트웨어 개발] 애플리케이션 테스트 관리 - 056. ⭐ 테스트 기법에 따른 애플리케이션 테스트

S_sun 2024. 7. 5. 09:16

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

  • 모듈의 원시 코드를 오픈시킨 상태에서 원시 코드의 논리적인 모든 경로를 테스트
  • 설계된 절차에 초점
  • 프로시터 설계의 제어 구조를 사용하여 테스트 케이스 설계
  • 테스트 과정의 초기에 적용
  • 모듈 안의 작동을 직접 관찰
  • 원시 코드(모듈)의 모든 문장을 한 번 이상 실행함으로써 수행됨
  • 제어 구조에 따라 선택, 반복 등 분기점 부분들을 수행함으로써 논리적 경로를 제어

2. ⭐ 화이트박스 테스트의 종류

1) 기초 경로 검사 (Base Path Testing)

  • 대표적인 화이트박스 테스트 기법
  • 절차적 설계의 논리적 복잡성을 측정할 수 있게 함
  • 측정 결과는 실행 경로의 기초를 정의하는데 지침으로 사용됨

2) 제어 구조 검사 (Control Structure Testing)

  • 조건 검사(Condition Testing) : 모듈 내에 있는 논리적 조건을 테스트
  • 루프 검사(Loop Testing) : 반복(Loop)구조에 초점을 맞춰 실시
  • 데이터 흐름 검사(Data Flow Testing) : 변수 정의와 변수 사용 위치에 초점을 맞춰 실시

3. 화이트박스 테스트의 검증 기준

1) 문장 검증 기준 (Statement Coverage)

  • 모든 구문이 한 번 이상 수행되도록 테스트 케이스 설계

2) 분기 검증 기준 (Branch Converage) = 결정 검증 기준 (Decision Coverage)

  • 모든 조건문에 대해 조건이 True인 경우, False인 경우가 한 번 이상 수행되도록 테스트 케이스 설계

3) 조검 검증 기준 (Condition Coverage)

  • 조건문에 포함된 개별 조건식의 결과가 True인 경우, False인 경우가 한 번 이상 수행되도록 테스트 케이스 설계

4) 분기/조건 기준 (Branch/Condition Coverage)

  • 분기 검증 기준과 조건 검증 기준 모두 만족하는 설계
  • 조건문이 True인 경우, False인 경우에 따라 조건 검증 기준의 입력 데이터를 구분하는 테스트 케이스 설계

💡 검증 기준(Coverage) 종류

  • 기능 기반 커버리지 : 실제 테스트가 수행된 기능 수 / 전체 기능 수
  • 라인 커버리지(Line Coverage) : 테스트 시나리오가 수행한 코드 라인 수 / 전체 코드 라인 수
  • 코드 커버리지(Code Coverage) : 코드의 구문, 분기, 조건 등의 구조 코드 자체가 얼마나 테스트 되었는지 측정하는 방법 => 화이트박스 검증 모두 해당

4. 블랙박스 테스트 (Black Box Test) = 기능 테스트

  • 특정 기능을 알기 위해서 각 기능이 완전히 작동되는 것을 입증하는 테스트
  • 프로그램 구조를 고려하지 않음
  • 프로그램 또는 모듈의 요구나 명세를 기초로 결정
  • 인터페이스에서 실시되는 테스트
  • 부정확하거나 누락된 기능, 인터페이스 오류, 자료 구조나 외부 DB 접근에 따른 오류, 행위나 성능 오류, 초기화와 종료 오류 등 발견하기 위해 사용
  • 테스트 과정의 후반부에 적용

5. ⭐ 블랙박스 테스트의 종류

1) 동치 분할 검사 (Equivalence Partitioning Testing, 동치 클래스 분해)

  • 입력 자료에 초점을 맞춰 테스트 케이스(동치 클래스)를 만들고 검사하는 방법 = 동등 분할 기법
  • 입력 조건에 타당한 입력 자료와 타당하지 않은 입력 자료의 개수를 균등하게 설정하고 해당 입력 자료에 맞는 결과가 출력되는지 확인

2) 경계값 분석 (Boundary Value Analysis)

  • 입력 자료에만 치중한 동치 분할 기법을 보완
  • 입력 조건의 중간값보다 경계값에서 오류가 발생될 확률이 높다는 점을 이용해 입력 조건의 경계값을 테스트 케이스로 선정하여 검사

3) 원인-효과 그래프 검사 (Cause-Effect Graphing Testing)

  • 입력 데이터 간의관계와 출력에 영향을 미치는 상황을 체계적으로 분석 후, 효용성이 높은 테스트 케이스를 선정하여 검사

4) 오류 예측 검사 (Error Guseeing)

  • 과거 경험이나 확인자의 감각으로 테스트
  • 다른 블랙박스 테스트 기법으로 찾아낼 수 없는 오류를 찾아내는 일련의 보충적 검사 기법 = 데이터 확인 검사

5) 비교 검사 (Comparision Testing)

  • 여러 버전의 프로그램에 동일한 테스트 자료를 제공해 동일한 결과가 출력되는지 테스트

 

[그림 1] 블랙박스 테스트

 

 

 

📖 Reference
 

2023 시나공 정보처리기사 필기 : 네이버 도서

네이버 도서 상세정보를 제공합니다.

search.shopping.naver.com

 

728x90
반응형