2012-06-27 22 views
1

的事情是:DBUnit的:驗證其作爲自動ID生成另一個表的外鍵

我有一個xml一些數據是採取了由正在運行的線程讀取數據,並執行一些業務後,邏輯持續數據到兩個表讓我們說表A和表B.

它的方式是表B的元組包含一個外鍵,它恰好是表A中的條目的自動生成的ID。由於我測試的是線程的正確性,我無法控制表A中條目的生成自動ID,我想要驗證的數據必須測試表A和表B的條目的連接正確性。

在期望的數據集中,我沒有辦法提供自動生成的ID和外鍵值,因爲我沒有意識到這一點。有沒有辦法做到這一點,如果數據庫單元提供的工具,您只需用變量替換期望值並在另一個表的相應條目中使用該變量? 或者還有其他方法可以做到嗎? 請幫忙...

回答

0

那麼我想通過指定確切的SQL而不是拾取單個表,然後忽略結果集中的ID列來通過DBUnit接收實際數據,以便您在結果集的每一行中,都是名稱映射屬性的名稱。最後是一個非常微不足道的東西:)

0

如果您使用@ExpectedDatabase檢查結果,可以指定修飾符assertionMode = DatabaseAssertionMode.NON_STRICT_UNORDERED

不要在結果集數據中指定id字段,它必須忽略比較中的id。

相關問題