java - Google App Engine 数据存储集成测试

标签 java google-app-engine google-cloud-datastore integration-testing

我想为我的 Google App Engine REST 服务器编写一些集成测试。

我当前的设置是针对本地运行的 GAE 环境运行 Rest-Assured 集成测试。这对于返回 json 的简单调用完美无缺。

我想更进一步,在运行 Rest-Assured IT 之前,我想清除数据存储并预先填充一些测试数据。

在本地应用程序运行时是否可以与相同的数据存储(来自集成测试)进行交互?请注意,我正在从 Eclipse 或 mvn test 运行测试。

我已经尝试过 LocalServiceTestHelper

private final LocalServiceTestHelper helper =
    new LocalServiceTestHelper(new LocalDatastoreServiceTestConfig());

但这似乎并没有连接到同一个数据存储,这也是有道理的,因为它是用于单元测试的。

最佳答案

我认为您正在做的测试只是一个单元测试 (JUnit),因此您需要的是像使用 Arquillian 这样的集成测试。

使用GAE Arquillian测试非常简单,只需要使用RedHat CapeDwarf团队开发维护的GAE Arquillian容器即可:

https://github.com/alesj/arquillian-container-gae

这是一个用法示例:https://github.com/alesj/arquillian-container-gae/blob/master/gae-embedded/src/test/java/org/jboss/arquillian/container/appengine/embedded/AppEngineEmbeddedClientTestCase.java

关于java - Google App Engine 数据存储集成测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21765367/

相关文章:

python - 如何在不实例化模型的情况下获取数据存储(应用程序引擎)记录?

java - 我需要澄清如何从 StackArray 添加和删除元素

java - 找不到添加到我的自定义库的库

php - 如何在 Google App Engine 中包含 PHP 的 MSSQL 驱动程序

python - GAE/P存储SES连接和线程安全

java - 如何减少App Engine中的查询配额?

java - 初始化 StringBuilder 以使用 UTF-16 编码器

java - 如何在java中将天数转换并附加到Period类的小时数中?

python - 绑定(bind)错误: Unable to find a consistent port for localhost

java - 在 Google App Engine 中创建实体