2013-07-15 100 views
1

我有一些JavaScript功能可以讀取當前頁面上的輸入值。這些選擇使用一些自定義屬性。JavaScript測試輸入

我想寫試驗證明,這是正常工作使用mocha

我的問題是,這是更好的路線採取

  1. ,顯示了摩卡測試結果頁上創建輸入?
  2. 嘗試模擬一個對象來充當當前頁面?

回答

0

取決於您的代碼。大多數情況下,您將使用jquery從輸入字段獲取數據。然後,更容易在DOM中爲您的測試創建輸入字段,導致它在那種情況下不容易模擬jquery。您必須首先模擬$,它必須返回具有val函數的對象。

您也可以重寫您的代碼,即您想要測試的函數始終將數據作爲參數注入,而不是從輸入字段讀取它們。

最後從DOM獲取數據大部分與使用new運算符在要測試或使用全局變量的函數中使用相同,應該避免使用全局變量以獲得更好的可測試性。