타입 정보를 이용한 생성
필드의 타입 정보를 데이터 생성의 기준으로 사용한다. dataclass에서는 해당 정보를 읽어 생성자에 전달할 인자들을 구성할 수 있다. 반복적인 기본값 선언을 줄이는 데 쓰이지만 타입이 표현하지 않은 업무 규칙까지 자동으로 알 수 있는 것은 아니다.
모델 형식의 범위
dataclass, TypedDict, Pydantic 모델과 msgspec 구조체 등 여러 형식의 데이터를 다룬다. 공통적인 생성 방식을 활용하면서도 프로젝트가 사용하는 모델 형태에 맞는 팩터리를 선택한다. 특정 형식의 모델을 생성하는 기능과 저장소에 보관하는 작업은 별개다.
이름과 적용 범위
이전에는 pydantic-factories라는 이름으로 제공되었으며 지원 대상을 넓히면서 Polyfactory로 이름이 바뀌었다. 오래된 예제를 사용할 때는 패키지 이름뿐 아니라 해당 버전의 구조도 확인한다. 생성된 객체가 시험 목적의 조건을 충족하는지는 별도 검증이 필요하다.
관련 문서
Factory Boy / Faker Python 라이브러리 / Hypothesis 테스트 도구 / Pytest-mock