我是新来的mockito,无法使用基本的anyInt()
方法。我错过了什么?这是我的测试。
public class SpanPainterTest {
@Test
public void simpleTest () {
SpannableString mockSpanString = mock(SpannableString.class);
SpanPainter painter = new SpanPainter();
painter.applyColor(mockSpanString);
verify(mockSpanString).charAt(anyInt());
verify(mockSpanString).equals(anyInt());
}
}
这是画师班。
public class SpanPainter {
public SpannableString applyColor(SpannableString span) {
span.charAt(7);
span.equals(0);
return span;
}
}
当我注释掉“
verify...charAt(anyInt()));
”行时,测试通过,因此anyInt()
适用于equals()
方法。 最佳答案
charAt
方法是final
且无法模拟最终方法。
查看PowerMock(PowerMockito)以模拟最终方法。