我一直有意將單元測試整合到我的javascript開發中一段時間,因爲我已經習慣使用firebug進行調試和測試,所以fireunit自然是做JS單元的明顯選擇測試。將HTML添加到Javascript Fireunit測試
我明白如何使用fireunit,但我仍然對如何在實際和有效的方面使用它感到困惑。我主要關心的是無法測試任何實際操縱DOM的函數,它讓我們面對它幾乎是所有的函數。
例如,我可能有一個看起來像這樣的函數。
function() {
var el = document.getElementById('el');
if(el) {
el.parentNode.removeChild(el); //Removes the child from the DOM
}
}
這是一個基本的例子,但是使用該函數需要與DOM進行交互。當包含元素的HTML未加載時,如何對此單元進行測試!?!
我對jsTestDriver不太熟悉,但是根據我的理解,您可以使用註釋將HTML添加到單元測試中(或者說,代碼看起來像什麼)。有沒有辦法通過fireunit測試來做這種事情?或者我應該用我們遍佈各地的代碼片段來混淆我的test.html,並希望它們不會發生衝突。定義一個在函數開始時加載的小塊HTML會很好,然後當測試函數完成並移到下一個時移除它自己。
我有一些想法,例如使用innerHTML來加載和卸載片段到測試DIV中,但我所有的方法都不夠清晰,並且需要爲每個測試函數編寫大量的樣板文件。我想聽聽一些可能已經提出了更有效的解決方案的人。