주요 기능
AutoParams는 테스트의 표현력을 높이고 반복 설정을 줄이기 위해 설계된 일련의 기능을 제공합니다. 몇가지 주요 기능은 다음과 같습니다.
📄️ @Freeze 애너테이션
@FreezeBy 애너테이션을 사용하면 테스트에서 값 동결을 세밀하게 제어할 수 있습니다. 단일 값을 동결하고 유형이나 이름과 같은 특정 조건과 일치하는 여러 생성 대상에서 이를 재사용할 수 있습니다. 이는 테스트 가독성을 향상시키고 생성된 값들 간의 일관성을 보장하는 데 도움이 됩니다.
📄️ 값의 범위 설정
@Min 및 @Max 애너테이션을 사용하여 자동으로 생성된 값의 범위를 제한할 수 있습니다. 이를 통해 숫자 매개변수에 대한 최소 및 최대 경계를 정의하여 생성된 값이 지정된 범위 내에 있도록 할 수 있습니다.
📄️ ResolutionContext 클래스
ResolutionContext 클래스는 테스트 데이터를 생성하기 위한 핵심 메커니즘을 제공합니다. AutoParams에서 내부적으로 사용되지만, 필요할 때 직접 테스트 코드에서 인스턴스화하고 사용할 수 있습니다.
📄️ Factory<T> 클래스
Factory 클래스는 동일한 유형의 인스턴스를 여러 개 생성해야 할 때 유용합니다. 이 기능을 사용하여 필요에 따라 단일 인스턴스 또는 컬렉션을 생성할 수 있습니다.
📄️ 사용자 정의
사용자 정의는 AutoParams에서 제공하는 가장 강력한 기능 중 하나입니다. 이를 통해 테스트 데이터 생성 방법을 완벽하게 제어할 수 있으므로 비즈니스 규칙을 적용하거나 특정 테스트 요구 사항을 충족하도록 데이터를 맞춤화할 수 있습니다.
📄️ 매개변수화된 테스트
AutoParams는 매개변수화된 테스트도 지원하므로 여러 입력 데이터 세트를 사용하여 동일한 테스트 논리를 실행할 수 있습니다. AutoParams를 사용하면 수동으로 지정한 값을 자동으로 생성된 테스트 데이터와 원활하게 결합하여 유연성과 편의성을 모두 얻을 수 있습니다.
📄️ 생성자 선택 정책
AutoParams는 여러 생성자가 있는 복합 유형의 인스턴스를 생성할 때 특정 정책에 따라 사용할 생성자를 결정합니다.