我對整個JPA後端進行了200多次單元測試,並且它們都在hsql db 2.2上運行良好。我有在連續的構建環境中運行的測試來驗證系統的穩定性。除了在Oracle 11上運行它們時,有些測試因參照完整性約束而失敗。這是由於我的代碼中存在一個錯誤,但是我在hsqldb中找不到它們的事實關係到我,並且違反了內存中符合jpa的輕量級數據庫的全部要求,因爲它不符合實際情況!如何在HSQL Db內存單元測試中啓用參照完整性
是否有一個設置可以觸發hsqldb在運行測試時考慮引用完整性。我懷疑他們在默認情況下被忽略。這些是我的jdbc設置:
jdbc.driver=org.hsqldb.jdbcDriver
jdbc.url=jdbc:hsqldb:mem:SampleProject
jdbc.username=sa
jdbc.password=
一個DB不符合JPA,一個JPA實現。也許你的JPA實現對Oracle有問題(因爲甲骨文,我們應該說,「延伸」了各個領域的JDBC規範的條款)。 – DataNucleus