Jester for Java와 같은 돌연변이 테스트 도구를 현대적으로 대체 할 수 있습니까? 바뀌는 경우가

“확실히 알 수있을 때 왜 테스트가 좋다고 생각합니까? 때로는 Jester가 내 테스트가 기밀 상태라고 말하지만 변경 사항이 파란색으로 바뀌는 경우가 있습니다. 적극 권장합니다.”-Kent Beck

그러나 stackoverflow 에는 ” Jester ” 라는 태그조차 없습니다 . 그렇다면 Jester 의 최신 대체품은 무엇 입니까? CoberturaClover 와 같은 도구에서 코드 적용 범위에서 통계를 찾는 것 외에 작성된 단위 테스트가 견고하다는 것을 어떻게 확신 할 수 있습니까?



답변

내가 아는 한 돌연변이 테스트는 테스트 스위트의 품질을 측정하기위한 최고의 자동화 프로세스로 남아 있습니다. 광대에 대한 두 가지 현대적인 대체품이 있습니다.

http://pitest.org (저는 저자입니다)

https://github.com/david-schuler/javalanche/

이들, 광대 및 다른 몇 가지 시스템에 대한 자세한 비교는 여기에서 가능합니다

http://pitest.org/java_mutation_testing_systems/

나는 광대가 이륙하지 않은 주된 이유는 그것이 느릴 수없고 매우 심하게 확장 되었기 때문이라고 생각한다.

PIT와 javalanche는 모두 비슷한 방식으로이 문제를 해결하려고합니다. 돌연변이에 대해 프로젝트에서 모든 테스트를 맹목적으로 실행하는 대신 먼저 라인 범위를 수집하고 실제로 돌연변이에 부딪 칠 수있는 테스트 만 실행합니다.

PIT는 또한 다양한 최적화를 수행하여 작업 속도를 높이고 이전 분석 결과를 재사용하여 후속 실행의 계산 비용을 크게 줄일 수있는 옵션을 제공합니다.


답변