嘿我正在使用HSQLDB作为数据库编写一些单元测试和集成测试。在测试中,建议在每个单元或集成测试后删除模式。一旦测试完成,表格是否会自行删除?或者这样做是为了防止在构建期间出错?
答案 0 :(得分:2)
这取决于HSQLDB实例的范围。如果你为每个测试创建一个,然后在测试完成后将其丢弃,那么删除模式是多余的,但可能是许多开发人员没有明确意识到(或者甚至想关心)他们使用的HSQLDB实例的生命周期。测试用例因此建议在测试完成后删除模式。
目标是测试独立性;如果您在每次测试后删除架构(或使用TRUNCATE SCHEMA <schema_name> AND COMMIT;
),那么您可以确信TestA
插入或变异的数据不会绊倒TestB
等。
当然,测试独立性也可以通过以下方式实现:
所以,有一些替代品,因此有任何指令“在”After“方法中删除模式,即在测试完成后”必须是推荐,只要你确定你就可以自由忽略以某种方式解决了测试独立性的需求。