JSDOM-将文档设置为全局值

时间:2019-04-17 12:42:30

标签: javascript reactjs jestjs jsdom

我尝试创建一个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值的方式不正确。

0 个答案:

没有答案