PowerMockito版本更新后,ArgumentMatchers无法正常工作

时间:2017-06-21 19:02:04

标签: mockito powermock jacoco powermockito

我有一个部分Mock在从PowerMock 1.4.8更新到1.7.0RC4之后不再工作,以解决降低代码覆盖率的声纳/ jacoco不兼容性问题。之后,不会调用使用匹配器作为参数的所有模拟。代码如下:

Calculator calc = mock(Calculator.class);
when(calc.getA()).thenReturn(new BigDecimal("1"));
when(calc.getB()).thenReturn(new BigDecimal("2"));
when(calc.calculate(any(Date.class), anyInt(), any(MyObject.class))).thenCallRealMethod();

传递真实参数时,最后一个模拟方法永远不会调用。我注意到这只是因为使用了诸如MyObject之类的非原始类型的Matchers。任何人都可以帮我解决这个问题吗?

我的pom.xml:

<dependency>
    <groupId>org.powermock</groupId>
    <artifactId>powermock-module-junit4</artifactId>
    <version>1.7.0RC4</version>
    <scope>test</scope>
</dependency>
<dependency>
    <groupId>org.powermock</groupId>
    <artifactId>powermock-core</artifactId>
    <version>1.7.0RC4</version>
    <scope>test</scope>
</dependency>
<dependency>
    <groupId>org.powermock</groupId>
    <artifactId>powermock-api-mockito2</artifactId>
    <version>1.7.0RC4</version>
    <scope>test</scope>
</dependency>

PS:我已经在使用ArgumentMatchers而不是Matchers api。

提前致谢

0 个答案:

没有答案
相关问题