실행 여부 다음의 질문
코드가 실행되었어도 결과를 확인하는 단언이 약하면 결함을 놓칠 수 있다. Pitest는 변경된 프로그램에 기존 검사를 적용해 이를 조사한다. 바뀐 동작 때문에 검사가 실패하면 그 변경을 발견한 것이다. 통과한 변경은 검사 범위와 기대 조건을 다시 살펴볼 출발점이 된다.
보고서로 찾는 공백
일반 커버리지와 변이 결과를 함께 보면 실행조차 되지 않은 영역과 실행되었지만 변경을 발견하지 못한 영역을 구분할 수 있다. 모든 변경이 실제 결함과 동일한 것은 아니다. 동작이 같은 변경이나 의미 없는 차이도 검토해야 하므로 변이 점수를 제품 품질의 절대적인 등급으로 읽지 않는다.
빌드 흐름에 적용하기
Maven이나 다른 빌드 도구와 연결해 실행할 수 있다. 코드와 테스트, 실행 환경에 맞는 플러그인 호환성을 확인하고 검사 범위를 정한다. 변이를 반복 실행하는 비용이 있으므로 변경한 핵심 부분부터 결과를 읽는 방식이 유용하다. 별도 상용 확장 제품의 기능을 기본 Pitest 기능과 동일하게 취급해서는 안 된다.
관련 문서
JaCoCo / Stryker NET / Mockito / AssertJ