JUnit 4 > org.junit.rules.ExpectedException のアクセス修飾子は public
表題通りそのままです
OK
@Rule public final ExpectedException exception = ExpectedException.none();
NG
@Rule protected final ExpectedException exception = ExpectedException.none();
@Rule private final ExpectedException exception = ExpectedException.none();
org.junit.internal.runners.rules.ValidationError: The @Rule 'exception' must be public. at org.junit.internal.runners.rules.RuleMemberValidator$MemberMustBePublic.validate(RuleMemberValidator.java:222) at org.junit.internal.runners.rules.RuleMemberValidator.validateMember(RuleMemberValidator.java:99) at org.junit.internal.runners.rules.RuleMemberValidator.validate(RuleMemberValidator.java:93) at org.junit.runners.BlockJUnit4ClassRunner.validateFields(BlockJUnit4ClassRunner.java:196) at org.junit.runners.BlockJUnit4ClassRunner.collectInitializationErrors(BlockJUnit4ClassRunner.java:129) at org.junit.runners.ParentRunner.validate(ParentRunner.java:416) at org.junit.runners.ParentRunner.<init>(ParentRunner.java:84) at org.junit.runners.BlockJUnit4ClassRunner.<init>(BlockJUnit4ClassRunner.java:65)