我正在开发一个用于工作的 API,我们为多个项目使用一个共享库来实现我们的日志框架。使用的类对其调用使用所有静态方法。
我正在尝试对 API 调用进行单元测试,我不能让它在 Logging 类上调用任何东西,否则它将失败。
我曾尝试使用 Powermock,但它失败了
PowerMockito.mockStatic(LoggingFramework.class);
Mockito.when(LoggingFramework.startACall(anyString())).thenReturn("someTimestamp");
返回一个
ClassCastException: org.apache.logging.slf4j.SLF4JLoggerContext cannot be cast to org.apache.logging.log4j.core.LoggerContext
LoggingFramework 中抛出它的行位于类中任何方法之外的静态初始化程序块内。