Old Posts226 [Java] @VisibleForTesting 애너테이션 자바 코드에서 @VisibleForTesting 애너테이션은 해당 메소드 혹은 멤버 변수의 가시성(Visibility)이 테스트를 위해 완화된 것임을 명시적으로 나타내는 의미다. 자바의 경우 프로그래밍을 할 때, 비즈니스 로직을 담고 있는 클래스와 테스트 클래스를 분리한다. 그리고 이 두 클래스를 같은 패키지에 두는 것이 일반적이다. 이렇게 되면, 비즈니스 로직을 담고 있는 클래스의 private 멤버나 메서드를 테스트 클래스에서 접근할 수 없다. 비즈니스 로직을 담고 있는 클래스는 캡슐화(Encapsulation)를 위해서 불필요하게 메서드나 멤버 변수를 외부로 노출시키지 않는 것이 좋다. 그렇다고 private 메서드의 테스트를 안할 수는 없다. 이 때 사용하는 것이 @VisibleForTesting.. 2020. 9. 30. 이전 1 ··· 23 24 25 26 다음