我正在做一些O / RM uni测试。现在问题就在这里。 1)要测试delete(),我需要使用insert() 2)要测试insert(),我需要使用select()
我做错了什么,因为我应该怎样独立测试方法?
答案 0 :(得分:0)
您应该使用内存数据库并使每个测试都自包含,而不依赖于DB中的预设数据(伪代码)
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();
}