위키득계정 ↗
기술

Pynguin

Pynguin기술
대상 언어
Python
목적
단위 테스트 자동 생성
인터페이스
명령행
성격
연구용 프로토타입
Pynguin은 Python 프로그램의 단위 테스트를 자동 생성하는 연구용 도구다. 검사할 모듈을 실제로 실행하므로 분석 환경과 실행 부작용을 함께 고려해야 한다.

테스트 생성을 자동화하기

함수와 클래스를 사용하는 테스트를 사람이 모두 작성하는 대신 도구가 생성하도록 하는 접근이다. 동적 타입 언어에서는 사용할 값과 호출 구성을 다루는 일이 중요한 문제가 된다. 생성된 테스트는 프로젝트의 검사 자산으로 검토할 수 있다.

대상 코드가 실행된다

생성 과정은 소스 파일을 읽기만 하는 작업이 아니다. 대상 모듈이 실행되면서 파일이나 외부 시스템에 영향을 줄 수 있다. 따라서 실험용 데이터와 격리된 환경을 준비하고, 생성 결과도 실제 프로젝트에 넣기 전에 확인한다.

연구 도구로 활용하기

프로젝트는 생산 환경용으로 완성된 제품이 아닌 연구 프로토타입이라고 명시한다. 지원 Python 버전과 실험적 지원을 구분해 실행 환경을 맞춘다. 테스트 파일이 만들어졌다는 사실과 충분한 검증이 이루어졌다는 판단은 별도로 평가한다.

관련 문서

CrossHair / Atheris / Randoop / EvoSuite