我正在做一些 O/RM uni 测试。现在问题来了。1)要测试delete(),我需要使用insert() 2)要测试insert(),我需要使用select()
我做错了什么,因为我还应该如何独立测试方法?
我正在做一些 O/RM uni 测试。现在问题来了。1)要测试delete(),我需要使用insert() 2)要测试insert(),我需要使用select()
我做错了什么,因为我还应该如何独立测试方法?
您应该使用内存数据库并使每个测试独立,而不依赖数据库中的预设数据(伪代码)
test should_insert_my_object_into_db() {
//given
MyObject original = givenNewMyObject();
//when
db.insert(original);
//then
MyObject copy = db.selectById(original.id);
assertThat(copy).isEqualTo(original);
}
test should_delete_my_object_from_db() {
//given
MyObject original = givenMyObjectInsertedIntoDB();
//when
db.delete(original.id);
//then
MyObject copy = db.selectById(original.id);
assertThat(copy).isNull();
}