测试Java数据库实体类

时间:2009-07-30 17:15:57

标签: java unit-testing entity-framework

目前,我们正在测试实体类和“worker”类,方法是为每个实体编写java servlet,并为每个实体执行Insert,update,delete,find ...以确保它正常工作。 worker类只是一个接口的实现,它使用JDBC将实体持久化到数据库,它们为实体提供数据库工作。

我想知道的是,用Java测试实体类的最佳方法是什么?

我正在寻找一种自动化方法,而不是编写一个模拟应用程序,它调用我正在尝试为每个创建的新实体测试的所有函数。

2 个答案:

答案 0 :(得分:2)

你应该能够独立地设置和使用实体和“worker”(如你所说的)类,或者使用servlet和Web容器。

使用纯JDBC和JUnit,您通常会执行以下操作:

  1. TestCase构造函数中打开JDBC连接。
  2. setUp()开始交易。
  3. tearDown()上回滚交易。
  4. 使用特定testXxx()方法中的实际实体实例。
  5. 在这种方法中,每个开发人员都有一个可能是本地的数据库实例。对于更高级的内容,请考虑DbUnit

答案 1 :(得分:0)

一种选择是使用反射来查找实体的不同部分(即不同的字段),然后使用这些不同的实体调用保存,更新,删除等方法。然后,当你添加一个新实体时,如果你的设置是使用xml或类似的东西完成的,那么测试就会把它们拿起来。

我是从Hibernate用户角度讲的,所以这可能不完全适用于您的情况,但它在过去对我有用。