2017-04-02 132 views
1

我想改進我的數據庫訪問代碼測試。DAO測試的優雅方式

我正在使用GAE數據存儲。爲了測試Db類,我使用了Backdoor Servlet。想知道,是否有更高效和優雅的方式來做DAO測試? 您對DAO的單元測試和集成測試的看法?

回答

0

這取決於你的數據庫是如何設置的。這裏有幾個其他的選項,除了你已經有的:

  • 你可以直接寫你的DAO的單元測試。你可以用mockito模擬數據庫調用。
  • 您可以編寫記錄與數據庫集成的單元測試,然後在第二次運行測試時重播它。看到這個betamax庫。
  • 您可以針對實際數據庫運行單元測試。現在它不再是單元測試,而是一種集成測試。在這種情況下,您需要考慮如何從數據庫中獲取乾淨的狀態。
  • 您可以針對整個系統運行集成測試,並通過使用代碼覆蓋工具確保您的大部分數據庫代碼都被觸及。

我更喜歡在包括數據庫和任何其他第三方集成的整個事情上進行全面的集成測試。並且對細節進行單元測試,但不一定涉及實際的數據庫調用。但是 - 一如既往 - 您的設置可能會導致您在其他方向。