2011-04-05 129 views
4

問候;
我在寫我的集成測試,所以我想知道集成測試數據庫驅動的PHP網站的最佳做法是什麼?我應該在每個測試中分別在setup()和teardown()中添加和刪除數據,還是應該在測試之前將測試數據輸入到測試數據庫?
我不是問使用什麼工具,而是使用方法。提前致謝。集成測試數據庫驅動的php的最佳做法是什麼?

回答

0

在我看來,用於測試的策略,是一個非常個人化的團隊決策。通常在我的項目中,我使用BDD(行爲驅動開發)來保證API的功能。

例如(CRUD的特點):

  • 我創建使用服務(banana.create)
  • 我列出所有提交的數據(banana.list)的新數據,並檢查是否存在新數據然後
  • 我使用過濾器(banana.list?id = xxx)列表並檢查響應結構是否正確
  • 我刪除了該行(banana.delete)並使用列表的服務檢查它...

而對於具體使用模擬的概念模型的組成部分我使用TDD(測試驅動開發)...

但是,主要的困難是在應用程序的設計......沒有測試:d

[]的

+0

嗨菲利普,感謝您的答覆,我有一套完整的單元測試爲我的db類,但他們使用模擬db連接,因此需要執行測試來驗證sql的作品。我可以預先填充或每次添加和刪除它。不知道哪個最好是我發佈這個問題的原因。 – Jim 2011-04-05 18:53:04

+0

Jim,你應該使用數據庫事務(例如:在setUp和tearDown中的回滾開始)。但我更喜歡使用帶有一些模板數據的數據庫並恢復它們。 – 2011-04-05 18:58:41

相關問題