我正在尝试为类似字处理器的操作编写单元测试,例如将列表应用到文本节点,但我发现 document.execCommandjsdom 不可用,所以我很困惑如何对以下内容进行单元测试手术:

document.getElementById('run').addEventListener('click', function() {
  document.execCommand("insertorderedlist");
});
<div contenteditable="true">Foo</div>
<button id="run">Select "Foo" then Click</button>

最佳答案

我最终不得不显式地模拟 document.execCommand:

// test-mocks.js
global.document.execCommand = function execCommandMock() { };

然后直接将我的模拟输入 mocha:
"specs": "mocha --require @babel/register --require jsdom-global/register --require ignore-styles --require test-mocks.js ./path/to/tests.spec.js"

关于mocha.js - 如何对 `document.execCommand` 进行单元测试?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/50023902/

10-15 13:36