예제 대신 성질을 적기
개별 입력과 답을 하나씩 적는 것에 더해 다양한 입력에서 지켜야 할 성질을 검사한다. 지정한 범위에서 값을 골라 사람이 미처 생각하지 못한 경계 사례도 시험할 수 있다.
전략으로 입력을 표현하기
정수와 목록 같은 값의 전략을 결합해 입력 공간을 표현한다. 테스트가 받아야 할 자료의 종류와 제약을 정하고 생성된 여러 값을 같은 검사에 전달한다.
실패를 작게 만들기
생성한 입력에서 실패를 찾으면 이를 더 간단하게 줄이는 축소를 수행한다. 우연히 복잡한 사례를 발견하는 데서 끝내지 않고 이해하기 쉬운 반례를 찾는 데 목적이 있다.
발견한 사례의 재실행
실패 입력은 데이터베이스에서 다시 실행할 수 있으며 명시적인 예제로도 남길 수 있다. 공식 문서는 항상 검사해야 할 입력은 캐시 성격의 데이터베이스에만 의존하지 말고 명시적으로 추가하도록 설명한다.