2017-07-27 86 views
0

這是一個希望簡單的問題:的NodeJS全球,JSdom,單元測試

當我用它來創建與jsdom一個DOM:

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; 

,然後用它像這樣一個測試:

import test from 'tape'; 
import dom from 'dom'; 

// To create global dom 
dom(); 

然而,當我做了一個測試,我有測試中的文檔,窗口和導航器未定義。 真的很奇怪,我錯過了什麼?還是我對它的行爲做出了假設。我應該採取不同的方式嗎?如果是這樣如何?

謝謝!

回答