예시에서 성질로
예시 중심 테스트는 입력과 정답을 한 쌍씩 지정한다. 속성 기반 테스트는 다양한 입력에도 유지되어야 하는 관계를 기술한다. FsCheck는 이 관계에 생성한 값을 적용하며 실패를 찾는다. 성질 자체가 잘못되었거나 너무 약하면 실행 횟수가 많아도 중요한 결함을 놓칠 수 있다.
생성 범위 설계
아무 값이나 만드는 것과 의미 있는 입력을 만드는 것은 다르다. 생성기를 조합하면 자료형과 도메인 조건에 맞는 데이터를 준비할 수 있다. 입력 분포도 관찰해 경계 상황이 실제로 등장하는지 살펴본다. 조건을 만족하는 사례가 거의 나오지 않는 설계는 검사의 효율을 떨어뜨린다.
작은 실패 사례의 의미
큰 입력에서 오류가 발견되면 원인을 읽기 어려울 수 있다. FsCheck는 실패가 유지되는 더 작은 반례를 찾는 축소 과정을 제공한다. 출력된 반례는 문제를 설명하는 단서이며 모든 가능한 입력에 대한 수학적 증명은 아니다. 기존 테스트 프레임워크와 결합하고 발견한 결함은 재현 가능한 회귀 검사로 남길 수 있다.