我正在为 DAO 层准备单元测试,该层与实体对象交互以持久保存到数据库中。
技术 Hibernate Java 1.6 JUnit
假设我想创建测试方法 addEntityA()
为此,我创建了 EntityA 对象。现在的问题是 EntityA 是 EntityB 的子级。所以我必须在EntityA中指定EntityB的引用。只有当 EntityB 先被持久化时,EntityA 才会被持久化到数据库中。因此,为了测试 EntityA 的持久性,我将测试 EntityB 的持久性。这样,它可以导致实体链必须在 EntityA 实际持久化以进行测试之前持久化。有人可能会争辩说我应该引用已经持久化的 EntityB 对象。但问题是我不想让测试用例依赖于数据库中的测试而不是测试数据。我与 JMock 解决的问题有些相似,但不确定 Jmock 在这里如何以及是否有用?
如果问题不清楚,请告诉我?