2013-06-05 99 views
7

我是使用Mocha & should.js進行單元測試的新手。我正在使用Mocha的BDD來測試我的應用程序。我正在測試的應用程序具有不同的組件,如帳戶,產品&訂單。在將代碼移動到git存儲庫之前,我想測試應用程序的所有方面。我爲所有組件提供了不同的測試文件。例如,account.js用於帳戶,order.js用於訂單&等。使用Mocha&Should.js組織測試

我想根據臨時測試帳戶測試所有組件。因此,流程爲:

  1. 創建測試帳戶
  2. 測試相關帳戶中的所有功能(更新配置文件,修改密碼等)
  3. 測試帳戶的產品
  4. 測試的所有功能的全功能賬戶的訂購
  5. 刪除測試賬號&有關的所有信息

我的問題是我如何確保在執行其他測試之前創建臨時帳戶?

因爲我已經在不同的文件中測試用例,所以我如何確保它們的執行順序與上面提到的相同?有沒有其他更好的方法來測試應用程序?

謝謝。

回答

7

你的單元測試應該是獨立的:執行一個不應該影響其他的執行。通過使用Mocha,我們通過使每個測試文件require具有beforeEach函數的實用程序文件來清除數據庫,爲每個單元測試建立連接等。還有一個afterEach函數可以在每次單元測試後清理並斷開連接。

如果您要運行的每個單元測試都需要一個測試帳戶,則可以將測試帳戶設置爲類似的頂級功能beforeEach函數。否則,您可以在所需摩卡describe區塊內的beforeEach功能中設置測試帳戶。