我想在fitnesse页面之间重置数据库(H2)。
我现在最好的猜测是在设置中删除并重新创建基础。
我尝试使用SchemaExport
,但它使用.sql文件,我的数据库配置使用JPA Annotations。
如果我"DROP ALL OBJECTS"
甚至"SHUTDOWN"
,我不知道如何重新创建表格
我可以使用"TRUNCATE TABLE"
,但它不是通用的,我认为它会比丢弃和重新创建更长。
我无法回滚交易,因为灯具不共享相同的交易。
Hbm2ddl=create-drop
将无效,因为我只为整个测试套件加载一次spring上下文。
你怎么样,fitnesse / spring / hibernate用户,处理这种情况?
答案 0 :(得分:0)
这可能不会成为我唯一的答案,但此刻我可以谈谈过去我是如何做过这样的事情的。
一个选项,我同意它比您正在寻找的更麻烦,是将测试套件作为CI系统中的独立实体运行。我过去所做的不是将整个测试套件作为一个大运行运行,而是将其分解为单独的Hudson / Jenkins工作(这提高了我们快速运行测试和减少内存问题的能力)。然后,作为启动hudson / jenkins作业的一部分,我们重置了数据库。
这样做就可以了解更多hudson / jenkins作业,但是如果可以针对不同的数据库运行套件,则可以并行运行多个作业。