[英]How can i verify that all my tables are empty with HQL/Hibernate?
我有一個很大的功能測試套件。 每個測試都是獨立的。 但是,有時會出現問題,這些測試之一會泄漏(在清除數據之前發生異常),隨后的某些測試可能會失敗。
因此,在每個測試中我要做的第一件事是檢查數據庫是否真的為空。 知道破損是由於泄漏而不是回歸是有幫助的。
我想知道是否可以通過單個請求執行此操作,因為我想避免執行和維護以下操作:
sessionFactory.getCurrentSession().createQuery("Select a From A a").list().isEmpty()
...
sessionFactory.getCurrentSession().createQuery("Select z From Z z").list().isEmpty()
我為mysql找到了這個: MySQL數據庫中非空表的列表,但這是特定的。
謝謝 :)
我要做的是將我的“ hibernate.hbm2ddl.auto”設置為在hibernate.cfg.xml中創建,並在每次測試中使用
sessionFactory = new AnnotationConfiguration().configure().buildSessionFactory();
這樣,為每個測試重新創建數據庫
怎么樣
session.createQuery("select 1 from table").setMaxSize(1).list().isEmpty()
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.