我在TypeScript 2.4.2中为使用相同语言编写的库编写了一些单元测试。
某些测试用例需要访问document.location.href
等属性,因此我需要模拟DOM。
测试运行器是Mocha,断言框架是Chai。
答案 0 :(得分:1)
好吧,经过几个小时的头痛和SO上的帖子后,我终于找到了办法:
npm install --save-dev jsdom jsdom-global
dom-mock.js
的文件。
require('jsdom-global')(/* any html you need */, {
/* any jsdom options you need, e.g: */
url: "https://example.org/",
referrer: "https://example.com/"
});
mocha -r tests/mocks/dom-mock.js -r ts-node/register tests/*.ts
如果您不需要DOM自定义,请运行mocha -r jsdom-global/register -r ts-node/register tests/*.ts