[英]jmockit issue when mocked class contains method returning Integer
JMockit
不會將Integer
集作為期望的返回值返回。
public interface Foo {
Integer getInt();
}
@Test
public void test(@Mocked final Foo foo) {
final Integer anyInt = 3;
new Expectations() {{
foo.getInt(); result = anyInt;
}};
assertThat(foo.getInt(), equalTo(anyInt));
}
失敗並顯示以下消息:
java.lang.AssertionError:
Expected: <3>
but: was <0>
知道為什么嗎?
JMockit 1.14
謝謝
JMockit Expectations API具有一組用於參數匹配的any
字段,包括anyInt
。 因此,出現在期望塊內的“ anyInt
”是該字段, 而不是同名的局部變量。
(如果使用的是體面的Java IDE,則其字段顯示的顏色應與用於局部變量的顏色不同,從而易於發現錯誤。)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.