본문 바로가기
IT기술노트/소프트웨어공학

AI 기반 정보시스템의 주요 블랙박스 테스팅 기법

by 비트코기 2021. 12. 29.

I. AI 기반 정보시스템의 고유특성으로 인한 테스팅 기법의 필요성

- AI 기반 정보시스템의 고유특성으로 인해 시스템 명세 문제, 테스트 입력 데이터 문제, 비결정적 시스템 문제, 복잡한 심층신경망으로 인해 이해가 어려운 문제로 테스트 오라클 문제가 발생하여 이에 맞는 테스팅 기법 필요

- AI 고유특성 : 적응성, 자율성, 진화, 유연성, 편향성, 성능 매트릭, 투명성, 복잡성, 비결정성


II. AI 기반 정보시스템의 주요 블랙박스 테스팅 기법

가. 조합 테스팅 및 백투백 테스팅

테스팅 기법 개념도 설명
조합 테스팅
(Combinatorial Testing)

-   입력 영역에서 유용한 조합의 하위 세트를 도출하기 위한 체계적이고 효과적으로 접근하는 테스트 기법
-   테스트 항목에 주어진 모든 환경, 입력 값을 모두 테스트하는 완벽한 테스팅의 어려움 발생
-   AI 기반 시스템에서 관리 가능한 작은 세트로 조합의 수를 줄여 체계적으로 관리
백투백 테스팅
(Back-to-Back Testing)

-   이미 존재하는 다른 버전의 시스템을 pseudo-oracle 사용하여 비교하는 테스트 기법
-   동일한 테스트 입력에 대해 비교 가능한 결과 필요
-   테스트하는 시스템과 동일한 비기능 제약 조건 충족 불필요
-   기계학습은 pseudo-oracle 생성을 위해 다양한 프레임워크, 알고리즘, 설정 사용

- 가능한 모든 상황의 모든 입력값을 테스트하는 완벽한 테스팅(Exhaustive testing)은 현실적으로 불가능

나. A/B 테스팅 및 변성 테스팅

테스팅 기법 개념도 설명
A/B 테스팅
(A/B Testing)

-   시스템 나은 성능을 결정하도록 해주는 통계적 테스트 기법
-   기존 시스템을 부분적인 오라클로 사용하는 테스트 오라클 문제 해결 수단
-   사용자 인터페이스설계 최적화에 활용
-   기계학습 분류기에서 정확도, 민감도, 재현율과 같은 성능 매트릭을 사용하여 시스템 측정
변성 테스팅
(Metamorphic Testing)

-   기대 결과가 고정 값이 아닌 다른 기대 결과와의 관계에 의해 정의되는 성질을 이용한 테스트 기법
-   AI 기반 시스템의 복잡성, 비결정성, 확률적 시스템의 이유로 기대 결과 생성 어려움
-   정확하다고 판명된 소스 테스트 케이스에서 후속 테스트 케이스를 생성하기 위한 변성 관계 사용
-   후속 테스트 케이스로 바뀐 기대 결과의 변경 영향 설명

- 심층신경망에 대한 화이트박스 테스트의 커버리지(뉴런 커버리지, 임계점 커버리지, 부호 변경 커버리지, 값 변경 커버리지, 부호-부호 커버리지, 레이어 커버리지 등) 고려


※ 출처: 

  - ISO/IEC TR 29119-11

  - 중소SW기업 SW품질관리 가이드 – AI 시스템 테스트

반응형

댓글