use*_*206 1 java junit unit-testing mockito
我刚刚开始模拟我们应用程序的不同层.当我调用最终类静态方法时,我的一个模拟对象正在返回NPE.有没有解决的办法?
例如
when(mockObject.someMethod(FinalClass.staticMethod(someParam)).anotherMethodCall)
.thenReturn("someString");
Run Code Online (Sandbox Code Playgroud)
你必须一起使用PowerMock和Mockito.
我不明白你的代码片段正在尝试做什么,但是下面的代码片段允许Calendar类的静态getInstance()方法返回一个模拟的Calendar对象.也许这会指出你正确的方向
在班级:
@RunWith(PowerMockRunner.class)
@PrepareForTest(Calendar.class)
public class XXXXXX {
Run Code Online (Sandbox Code Playgroud)
在你的测试方法中
PowerMockito.mockStatic(Calendar.class);
Calendar calendar = mock(Calendar.class);
when(calendar.get(eq(Calendar.HOUR_OF_DAY))).thenReturn(3);
Mockito.when(Calendar.getInstance()).thenReturn(calendar);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
18582 次 |
| 最近记录: |