Javascript - 如何测试更新文档(DOM)的函数?

时间:2017-02-26 23:38:10

标签: javascript unit-testing jsdom

我有以下功能:

var doSomething = function(){
    var insertHere = document.getElementById('insertHere');
    var item = document.createElement('a');
    item.innerHTML = "hello";
    insertHere.appendChild(item);
};

如您所见,这会直接向document添加项目。我想测试这个功能,不确定最好的方法。我想过使用jsdom,但doSomething期望文档可用,我能看到如何做到这一点的唯一方法是将document作为可选参数传递...

// In my test, create a document using jsdom and pass it to the function.
var jsdom = require("jsdom").jsdom;
var jsdomDocument = jsdom("<html><body><div id='insertHere'></div></body></html>");
doSomething(jsdomDocument );

// Then adjust the function to accept this document.
var doSomething = function(jsdomDocument){
    document = jsdomDocument || document;
    ...
};

......还是有更好的方法来测试这个功能吗?

0 个答案:

没有答案