我有一个包含存储在数据库中的主键的类。在创建类的新实例时,可以从HSQLDB数据库中获取它,或者对于不在数据库中的项,它会插入除主键之外的所有内容,这将自动生成并返回到类以设置id属性。然后我有一个getID()方法来检索这个ID。
我正在尝试编写一个JUnit测试,检查以确保生成的ID是getID()方法返回的内容但我已经使用'CALL IDENTITY'查询来检索构造函数中的ID以及后续使用返回0.确保生成的ID与getID()方法返回的id相同的最佳方法是什么?
答案 0 :(得分:1)
我真的会考虑不同的设计来测试这些类。在大多数情况下,访问数据库确实不是单元测试。如果db ID生成器工作并且有一个测试,那么你不应该真的需要它来测试你的类。
前提是你的类可以返回一个Id,那么所有重要的是你的类返回在适当的时候输入的id。