我正在尝试使用 Google App Engine 的“测试”或“开发”版本 LogService
这样我就可以在 GAE 之外的单元测试中使用它。
我在类路径中添加了 appengine-testing.jar
、appengine-api.jar
和 appengine-api-stubs.jar
,并看到一个看起来像我想要的类:
com.google.appengine.api.log.dev.LocalLogService
当我创建此实例并尝试查找 fetch(LogQuery)
方法时,我没有看到任何方法。很明显这不是我要找的类(class)。我哪里错了?提前致谢。
最佳答案
只需使用类似 Mockito 的内容即可模拟 GAE LoggingService
:
@Test
public void myUnitTest() {
// Given
MyPojo fixture = new MyPojo();
LoggingService mockService = Mockito.mock(Logging.Service);
Mockito.doNothing().when(mockService).fetchLogs(Mockito.any());
fixture.setLoggingService(mockService);
// When
fixture.logSomethingToGAELogs("Some string to log");
// Then - verify
Mockito.verify(mockService).fetchLogs("Some string to log");
}
关于java - Google App Engine LogService 的开发/测试版本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14692175/