hashCode
및 equals
을 클로버 신고에서 제외하고 싶습니다.
일부 구성 예는 좋을 것입니다.클로버 적용 범위 보고서에서 해시 코드와 같음 메소드를 제외하려면 어떻게해야합니까?
답변
은 두 단계를 수행해야
<clover-setup ...>
<methodContext name="equals" regexp="public boolean equals\(.*\)"/>
<methodContext name="hashCode" regexp="public int hashCode\(\)"/>
</clover-setup>
2) 어떤 방법이 상황은 < 클로버 보고서 > 작업에 보고서에서 제외한다 정의합니다
<clover-report>
<current outfile="clover_html" title="My Coverage">
<format type="html" filter="equals,hashCode"/>
</current>
더 많은 정보 :
해시 코드와 같음을 클로버 보고서에서 제외하고 싶습니다.
저는이 방법을 피하는 대신 실제로 테스트 해 보라고 제안합니다. 그들이 사양과 일치하지 않으면 심각한 버그가 발생할 수 있습니다. 나는 NPE와 다른 문제를 겪었습니다. hashCode
과 equals
방법이 있습니다. 다음은 방법을 테스트 할 수있는 방법의 번호와 좋은 링크입니다 :
우리 사용하는 단위 테스트에 의해 확장 될 수있는 다음 LocalEqualsHashCodeTest
:
그런 다음 createInstance()
메서드를 정의합니다. ch는 클래스의 인스턴스와 첫 번째 인스턴스와 다른 인스턴스를 반환하는 createNotEqualInstance()
메서드를 반환합니다. 예를 들어, 일치시킬 방법에 대해 정규 표현식을 포함하는 < 클로버 설치 > 작업에
1) 정의 방법 컨텍스트 :
equals/hashcode를 테스트하는 것이 당연하다고 생각할 때마다 묻지 않았습니다. 그것, 그러나 클로버에서 그들을 제외하는 방법 –
그것은 좋은 @MaciejMiklas 다. 나는 당신에게 사물을 보는 다른 방법을주고 싶었습니다. SO에 대한 수많은 답변은 특정 질문을 다루지는 않지만 포스터가 다르게 보는 것을 권장합니다. 사실은 모르지만 테스트하지 않는 것은 나쁜 습관이라고 생각합니다. – Gray
웃긴, 나는 여기에 와서 내 cobertura 사이트에서 hashcode와 equals를 제외시키는 방법을 찾고자했다. 그러나 실제적으로 (유틸리티 클래스로 테스트하는) 훨씬 더 좋아 보인다. 감사합니다! (btw, 나는 왜 OP가 당신의 대답에 대해 너무 가혹했는지 이해하지 못한다 ...) – juancancela
왜 당신이 그 방법을 테스트하고 싶지 않아요? 나는 그것이 실수라고 생각한다. – duffymo
이것에 대한 해결책을 알아 냈습니까? 만약 당신이 – add9
을 공유 할 수 있다면 정말로 좋을 것입니다. 아직 해결책이 없습니다. 사실 지금은이 문제를 무시했습니다. ... –