我尝试创建一个JSDOM进行笑话测试,但是遇到一些问题, 我想将文档/窗口设置为全局,但测试文件中的文本内容为空。
这是我的代码: JSDOM设置:
const { JSDOM } = jsdom;
const dom = new JSDOM('<!DOCTYPE html><p id="test">Hello world</p>');
global.window = dom.window;
global.document = dom.window.document;
但是在我的测试中,我尝试打印出文本,但返回null
console.log(document.querySelector('#test'));
似乎该文档不是我设置为全局文档,我可以用来设置文档的方式是正确的,有人可以告诉我我在做什么吗?
我尝试定义一个新的全局值:
global.omg = dom.window.document;
它在测试文件中有效,当我尝试console.log(omg.querySelector('#test'));
时,它会打印出Hello world。
问题在于我设置global.document值的方式不正确。