testing-property-based
Installation
SKILL.md
Property-Based Testing
함수 시그니처와 타입 정보를 분석하여 속성(property)을 추론하고, PBT 코드를 자동 생성하는 스킬.
Overview
Property-Based Testing(PBT)은 구체적인 입력 예제 대신 모든 입력에 대해 성립해야 하는 속성을 정의하고, 프레임워크가 수백~수천 개의 무작위 입력을 자동 생성하여 속성 위반을 탐색하는 테스트 기법이다.
PBT 핵심 개념
| 개념 | 설명 |
|---|---|
| 속성(Property) | "모든 (x, y, ...) 에 대해 precondition(x,y,...) 이 성립하면 predicate(x,y,...) 는 참이다" |
| 생성기(Generator) | 테스트 입력을 자동 생성. 기본 타입부터 복합 구조까지 조합 가능 |
| 축소(Shrinking) | 실패 발견 시 최소 실패 입력을 자동 탐색하여 디버깅 용이성 향상 |
| 상태 기반 테스팅 | 액션 시퀀스를 자동 생성하여 상태 머신의 속성을 검증 |