Enz*_*ion 5 java android unit-testing powermockito
我试图在单元测试中验证在特定配置中未调用静态方法。
因此,我使用 PowerMock ( powermock-core:2.0.4& powermock-module-junit4:2.0.4) 及其 Mockito API ( powermock-api-mockito2:2.0.4)。
做的时候
PowerMockito.mockStatic(MyClass.class);
serviceUnderTest.methodThatShouldNotCallStaticMethod(arg1, arg2); //service not of type MyClass of course
PowerMockito.verifyStatic(MyClass.class, never());
MyClass.staticMethod(any(), any());
Run Code Online (Sandbox Code Playgroud)
在用注释的类中的测试方法上
@RunWith(PowerMockRunner.class)
@PrepareForTest({MyClass.class})
Run Code Online (Sandbox Code Playgroud)
我得到以下错误:org.mockito.exceptions.misusing.NotAMockException:
Argument passed to verify() is of type Class and is not a mock!。
我做错了什么以及如何解决?
谢谢
原来是Powermock的bug ...
这是任何可能感兴趣的人的解决方法:
testImplementation 'org.mockito:mockito-inline:2.13.0在 gradle 中删除“行”src\test\resources\org\powermock\extensions\configuration.properties由单行组成的文件mockito.mock-maker-class=mock-maker-inline| 归档时间: |
|
| 查看次数: |
1088 次 |
| 最近记录: |