Javascript 如何修复TypeError:document.getElementById在对使用传单.js对象的文件运行单元测试时不是函数?

Javascript 如何修复TypeError:document.getElementById在对使用传单.js对象的文件运行单元测试时不是函数?,javascript,unit-testing,leaflet,mocha.js,Javascript,Unit Testing,Leaflet,Mocha.js,我有完全相同的问题,这是在这篇文章 我无法对此帖子发表评论或添加其他问题,因此我为重复的问题道歉 GLOBAL.window = { screen: {} }; GLOBAL.document = { documentElement: { style: {} }, getElementsByTagName: function () { return []; }, createElement: function () { return {}; } }

我有完全相同的问题,这是在这篇文章

我无法对此帖子发表评论或添加其他问题,因此我为重复的问题道歉

GLOBAL.window = { screen: {} };
GLOBAL.document = {
    documentElement: {
        style: {}
    },
    getElementsByTagName: function () { return []; },
    createElement: function () { return {}; }
};
GLOBAL.navigator = {
    userAgent: 'nodejs',
    platform: 'nodejs'
};

GLOBAL.L = require('leaflet');
const assert = require('assert');
const config = require('../js/config.js')
config.js中包含以下内容

const openstreetmap = L.tileLayer('https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png', {
    attribution: '&copy; <a href="https://www.openstreetmap.org/copyright">OpenStreetMap</a> contributors'
});

const map = L.map('map', {
    center: [39, -105],
    zoom: 4,
    defaultExtentControl: true,
    zoomControl: false,
    layers: [openstreetmap]
});
const openstreetmap=L.tileLayer('https://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png'{
属性:“©;贡献者”
});
常量map=L.map('map'{
中间:[39,-105],
缩放:4,
defaultExtentControl:true,
动物控制:错误,
图层:[openstreetmap]
});
我键入mocha并得到以下错误:

TypeError:document.getElementById不是函数 获取时(C:\dev\apps\APP\node\u modules\mobile\dist\mobile src.js:2247:43) 在NewClass.\u initContainer(C:\dev\apps\APP\node\u modules\mobile\dist\mobile src.js:4094:37) 在NewClass.initialize(C:\dev\apps\APP\node\u modules\mobile\dist\mobile src.js:3131:8) 在新的NewClass上(C:\dev\apps\APP\node\u modules\mobile\dist\mobile src.js:301:20) 在Object.createMap[作为映射](C:\dev\apps\APP\node\u modules\mobile\dist\mobile src.js:4718:9) 反对。(C:\dev\apps\APP\resources\js\config.js:12:15) at模块编译(内部/modules/cjs/loader.js:701:30) at Object.Module._extensions..js(internal/modules/cjs/loader.js:712:10) at Module.load(内部/modules/cjs/loader.js:600:32) 在tryModuleLoad(内部/modules/cjs/loader.js:539:12) at Function.Module._load(内部/modules/cjs/loader.js:531:3) at Module.require(内部/modules/cjs/loader.js:637:17) 根据需要(内部/modules/cjs/helpers.js:22:18) 反对。(C:\dev\apps\APP\resources\test\config\u test.js:45:16) at模块编译(内部/modules/cjs/loader.js:701:30) at Object.Module._extensions..js(internal/modules/cjs/loader.js:712:10) at Module.load(内部/modules/cjs/loader.js:600:32) 在tryModuleLoad(内部/modules/cjs/loader.js:539:12) at Function.Module._load(内部/modules/cjs/loader.js:531:3) at Module.require(内部/modules/cjs/loader.js:637:17) 根据需要(内部/modules/cjs/helpers.js:22:18) 在C:\Users\usr\AppData\Roaming\npm\node\u modules\mocha\lib\mocha.js:334:36 在Array.forEach()处 在Mocha.loadFiles(C:\Users\usr\AppData\Roaming\npm\node\u modules\Mocha\lib\Mocha.js:331:14) 在Mocha.run(C:\Users\usr\AppData\Roaming\npm\node\u modules\Mocha\lib\Mocha.js:811:10) 在Object.exports.singleRun(C:\Users\usr\AppData\Roaming\npm\node\u modules\mocha\lib\cli\run helpers.js:108:16) 在exports.runMocha(C:\Users\usr\AppData\Roaming\npm\node\u modules\mocha\lib\cli\run helpers.js:142:13) 在Object.exports.handler.argv[作为处理程序](C:\Users\usr\AppData\Roaming\npm\node\u modules\mocha\lib\cli\run.js:292:3) at Object.runCommand(C:\Users\usr\AppData\Roaming\npm\node\u modules\mocha\node\u modules\yargs\lib\command.js:242:26) 在Object.parseArgs[as _parseArgs](C:\Users\usr\AppData\Roaming\npm\node\u modules\mocha\node\u modules\yargs\yargs.js:1104:24) 在Object.parse(C:\Users\usr\AppData\Roaming\npm\node\u modules\mocha\node\u modules\yargs\yargs.js:566:25) 位于Object.exports.main(C:\Users\usr\AppData\Roaming\npm\node\u modules\mocha\lib\cli\cli.js:68:6) 反对。(C:\Users\usr\AppData\Roaming\npm\node\u modules\mocha\bin\mocha:154:29) at模块编译(内部/modules/cjs/loader.js:701:30) at Object.Module._extensions..js(internal/modules/cjs/loader.js:712:10) at Module.load(内部/modules/cjs/loader.js:600:32) 在tryModuleLoad(内部/modules/cjs/loader.js:539:12) at Function.Module._load(内部/modules/cjs/loader.js:531:3) 位于Function.Module.runMain(内部/modules/cjs/loader.js:754:12) 启动时(内部/bootstrap/node.js:283:19) 在bootstrapNodeJSCore(internal/bootstrap/node.js:622:3)