java - Google App Engine LogService 的开发/测试版本

标签 java google-app-engine service jar classpath

我正在尝试使用 Google App Engine 的“测试”或“开发”版本 LogService这样我就可以在 GAE 之外的单元测试中使用它。

我在类路径中添加了 appengine-testing.jarappengine-api.jarappengine-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/

相关文章:

java - mongodb 连接被对等方重置 : socket writer error

python - rdbms API 不可用,因为无法加载 MySQLdb 库

android - 如何在服务中设置 START_STICKY

java - 负数的立方根

java - 将 HTML 解析为对象

java - 是否可以有一个泛型类,其中类型是未知维度的数组?

python - 如何设置 ndb keyProperty

python - 在 Google AppEngine 中将数据导出为 XML 文件

java - 使用 Maven 构建 OSGI 声明式服务

asp.net - 断开连接的应用程序开发方法