In JUnit test case, a field annotated by @Rule
must be public. It breaks a common Java coding convention (all class member variables should not be public). Why does JUnit require this?
Documentation for @Rule
: https://github.com/junit-team/junit/blob/master/src/main/java/org/junit/Rule.java