我用 chentsulin 的 electron/react boilerplate 构建了一个单页应用程序,它带有以下用于测试的 Node 脚本:
"test": "cross-env NODE_ENV=test BABEL_DISABLE_CACHE=1 mocha --compilers js:babel-register --recursive --require ./test/setup.js test/**/*.spec .js”
样板文件附带了许多通用测试,这些测试一开始就可以运行(我自己证实了这一点)。它还附带了许多 webpack 配置以适应不同的环境。
该应用程序现在已经相当成熟了,并且正在使用 electron-json-storage处理本地存储。我刚刚回去编写测试,当我运行 test
Node 脚本(有或没有 --renderer)时,我得到以下信息:
[dirpath]/node_modules/electron-json-storage/lib/utils.js:30
const app = electron.app || electron.remote.app;
^
TypeError: Cannot read property 'app' of undefined
我试过使用 webpack.IgnorePlugin 来忽略 electron-json-storage,但这没有任何作用。我的猜测是 electron-json-storage 试图引用一个不存在的实例化 Electron session 。什么是最简单的虚拟化方法?
最佳答案
问题是我使用的是 mocha(它是 Electron-React 样板的一部分)。安装 electron-mocha 并更改 package.json 中的 test
脚本立即解决了这个问题。
关于javascript - 模拟 Electron session 以进行 Mocha/Chai 测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40582057/