NodeJS Global,JSdom,单元测试

时间:2017-07-27 21:15:27

标签: node.js unit-testing jsdom

这是一个很有希望的简单问题:

当我用jsdom创建一个dom:

select concat('curl -v https://api.com.br/push.json  -H \"Content-Type: application/json\" -H \"x_application: WebApp\" -H -X POST -d \'{\"pushes\":[\''
    ,string_agg(to_json_string(t)),']}\'') as json

然后在类似的测试中使用它:

const dom = (html = '<!doctype html><body></body></html>') => {
  const domObject = new JSDOM(html);
  const { window } = domObject;
  const { document } = (domObject).window;

  global.window = window;
  global.document = document;
  global.navigator = {
    userAgent: 'JSDOM',
    language: 'en'
  };
}

module.exports = dom;

然而当我做测试时,我在测试中没有定义文档,窗口和导航器。 这真的很奇怪,我错过了什么吗?或者我对它的行为做出假设。我应该采用不同的方法吗?如果是这样的话?

谢谢!

1 个答案:

答案 0 :(得分:0)

这就是它的完成方式!

http://airbnb.io/enzyme/docs/guides/jsdom.html

为那些好奇的人精心工作。