我正在开发一个基于反应的前端应用程序,正在使用摩卡/酶进行单元测试。
堆栈包括webpack,react,mocha +用于测试的酶和用于身份验证/ db /等的firebase。
当我尝试运行npm test
时,由于Firebase出现以下错误:
WEBPACK Compiled successfully in 3412ms
MOCHA Testing...
RUNTIME EXCEPTION Exception occurred while loading your tests
TypeError: Cannot read property 'stringify' of undefined
at Module.eval (webpack:///./node_modules/@firebase/webchannel-wrapper/dist/index.esm.js?:31:308)
at eval (webpack:///./node_modules/@firebase/webchannel-wrapper/dist/index.esm.js?:136:30)
...
npm ERR! Test failed. See above for more details.
什么可能导致此错误?在我导入Firebase之前,这没有发生。我应该调整Webpack的配置吗?
答案 0 :(得分:0)
所以,我已经弄清楚了。测试的加载方式似乎是一个问题,即使mocha测试过程是在“节点”模式下构建的,也导致firebase软件包以“网络”模式加载。
无论如何,以下是帮助我解决此问题的链接:https://github.com/firebase/firebase-js-sdk/issues/1455#issuecomment-455712500。
基本上,捆绑时忽略节点模块(特别是firebase)。