Annotation Interface VisibleForTesting


@Target({METHOD,FIELD,CONSTRUCTOR,TYPE}) @Retention(SOURCE) public @interface VisibleForTesting
Annotates a program element that exists, or is more widely visible than otherwise necessary, only for use in test code.

Do not use this interface for public or protected declarations: it is a fig leaf for bad design, and it does not prevent anyone from using the declaration---and experience has shown that they will.

Borrowed from Guava.