사용자 도구

사이트 도구


java:equals_verifier

문서의 이전 판입니다!


Equals Verifier

  • Java 클래스의 equalshashCode 메소드는 일반적으로 자동 생성하는 방식을 사용하는데 Java Code Coverage에서 매우 많은 커버리지를 깎아먹는 부분이다. 이에 equalshashCode에 대해 자동 테스트를 하여 커버리지를 높여주는 역할을 한다.
  • 이름은 EqualsVerifier이지만 hashCode까지 처리한다.

Lombok equals hashCode 테스트

  • EqualsVerifierExample이라는 Lombok @Data 애노테이션이 적용된 클래스가 있을 때
    @Test
    public void equalsContract() throws Exception {
        class SubEqualsVerifierExample extends EqualsVerifierExample {
            @Override
            public boolean canEqual(Object obj) {
                return false;
            }
        }
        EqualsVerifier.forClass(EqualsVerifierExample.class).suppress(Warning.NONFINAL_FIELDS).withRedefinedSubclass(SubEqualsVerifierExample.class).verify();
    }
java/equals_verifier.1404803615.txt.gz · 마지막으로 수정됨: 2014/07/08 16:13 저자 kwon37xi