Jest testing env的新手。我需要为三个不返回任何值但希望有两个数值的函数编写测试用例?
如何测试这些功能?有人可以帮我吗
const app = function () {
let buttons = numbers;
for (let i = 1; i <= buttons.length; i++) {
Buttons(buttons, i);
}
};
const Buttons = (buttons, i) => {
let div = document.getElementById("main");
let button = document.createElement("button");
let text = document.createTextNode(i);
button.id = "btn-" + i;
button.appendChild(text);
div.appendChild(button);
button.addEventListener("click", function () {
let num = text.nodeValue;
for (var i = 1; i <= buttons.length; i++) {
Highlight(num, i);
}
});
};
const Highlight = (num, i) => {
if (i % num === 0) {
let box = document.getElementById("btn-" + i);
box.classList.add("active");
} else {
let box = document.getElementById("btn-" + i);
box.classList.remove("active");
}
};
答案 0 :(得分:0)
您可以通过模拟和间谍调用外部方法来测试它们的副作用,从而对其进行测试
document.getElementById
box.classList.add
box.classList.remove
button.addEventListener
document.createElement
document.createTextNode