【发布时间】:2018-05-30 07:42:46
【问题描述】:
我正在尝试为使用 Objectify 访问数据存储的 GAE 应用程序设置单元测试框架。此测试是编写的,但在本地环境中执行时失败。
以下是代码:
public class ObjectifyTest {
private final LocalServiceTestHelper helper =
new LocalServiceTestHelper(new LocalDatastoreServiceTestConfig(),
new LocalMemcacheServiceTestConfig());
private Closeable ofySession;
@Before
public void setUp() {
helper.setUp();
ofySession = ObjectifyService.begin();
}
@After
public void tearDown() {
ofySession.close();
helper.tearDown();
}
@Test
public void testApiHandlerGetTrackerTag() {
Date now = new Date();
TrackerTag tag1= new TrackerTag();
tag1.setHash("...");
TrackerTag tag2= new TrackerTag();
tag2.setHash("...");
TrackerTag tag3= new TrackerTag();
tag3.setHash("...");
OfyService.ofy().save().entities(tag1, tag2, tag3).now();
assertEquals(3,OfyService.ofy().load().type(TrackerTag .class).list().size());
}
}
此测试在 assertEquals(...) 处失败,因为对 Objectify 的调用返回大小为 1 的列表,而不是预期的 3。关于原因有什么想法吗?
【问题讨论】:
-
This 可能对你有帮助。
-
仍然不知道它为什么会这样。这里有任何 Objectify 专家也可以提供帮助吗?
-
能否请您发布类 TrackerTag 的代码?
标签: java unit-testing google-app-engine junit objectify