我的JUnit測試中有一個非常奇怪的問題,我似乎無法確定。我有一個具有相當標準結構的多模塊java webapp項目(DAO,服務分支等)。在這個項目中,我有一個'核心'項目,它包含一些抽象的設置代碼,它將一個測試用戶和必要的項目一起插入到用戶中(在這種情況下是一個'企業',因此用戶必須屬於企業,在數據庫級別)JUnit測試失敗 - 抱怨剛剛插入的缺失數據
相當簡單那麼遠,但這裏是哪裏的陌生感開始
- 一些測試無法運行,並拋出一個數據庫異常的地方抱怨用戶不能插入,因爲企業不存在。但它只是在前面的代碼行中創建了企業!企業的插入沒有錯誤。
- 陌生人,但如果這個測試類本身運行一切正常。只有當測試作爲項目的一部分運行時纔會失敗!
- 而完全相同的抽象代碼是在失敗之前通過10次測試運行的!
- ˚F
我一直在敲我的頭靠在這個牆上的天,真的沒有取得任何進展。我甚至不確定要提供哪些信息來幫助診斷此問題。
- 使用JUnit 4.4,春季2.5.6,2.3.0的iBatis,PostgreSQL 8.3版本
- 切換到org.springframework.jdbc.datasource.DriverManagerDataSource從org.apache.commons.dbcp.BasicDataSource改變的問題。使用DriverManagerDataSource,測試第一次工作,但現在突然間大量數據不會回滾到數據庫中!它使一切落後。當通過Eclipse & Maven的
運行,請詢問任何信息可以幫助我解決我的問題都沒有錯誤
更新:我已經把記錄打開到最大。這次失敗的測試與另一次成功的測試只有一點區別。差異是突出顯示的。之後發生錯誤我看到一些「創建[java.util.concurrent.ConcurrentHashMap中]」線,然後將錯誤處理代碼開始
您可以在故障點檢查數據庫嗎?它實際上是否有企業記錄? – Yishai 2010-05-31 18:59:36
可以給你提供你的db模型嗎.. – bragboy 2010-05-31 19:01:07