我有一个包含setTimeouts的函数。我正在尝试进行单元测试,但是在代码覆盖率报告中,它总是显示setTimeout中的代码没有执行。
这是代码。
var func = function(str, type) {
var t1 = setTimeout(function() {
document.getElementById("ledtext").style.color = "#631313";
}, 100);
var t2 = setTimeout(function() {
document.getElementById("ledtext").style.color = "#ea0707";
}, 300);
var t3 = setTimeout(function() {
document.getElementById("ledtext").style.color = "#631313";
}, 500);
var t4 = setTimeout(function() {
document.getElementById("ledtext").style.color = "#ea0707";
localThisObject.startSequence(type);
}, 700);
}
代码覆盖率
如何使用Karma-jasmine进行上述代码的单元测试?
这是devDependencies的列表:
"devDependencies": {
"jasmine-core": "^2.2.0",
"karma": "^0.12.31",
"karma-chrome-launcher": "^0.1.7",
"karma-coverage": "^1.1.1",
"karma-fixture": "^0.2.6",
"karma-htmlfile-reporter": "^0.3.5",
"karma-jasmine": "^0.3.5",
"karma-phantomjs-launcher": "^1.0.4"
}