【发布时间】:2023-03-26 16:03:01
【问题描述】:
我正在尝试模拟 System 类以获取 currentTimeMillis() 的常量值。 由于我无法使用 Mockito 模拟最终类,因此我使用 PowerMock,但是在模拟 System.currentTimeMillis() 时出现错误“无法解析方法时(长)”。
我的代码如下:
PowerMockito.mockStatic(System.class);
when(System.currentTimeMillis()).thenReturn(CURRENT_TIME_STAMP);
我还将我的班级注释为:
@RunWith(PowerMockRunner.class)
@PrepareForTest(System.class)
public class DateTimeUtilsTest {
【问题讨论】:
-
如何将其视为第 3 方依赖/实现关注点,并将其封装在可以轻松实现和模拟/存根的抽象后面。
-
我对 jmockit 有更好的体验。
标签: java mocking mockito powermock