hen*_*l28 5 unit-testing node.js reactjs jestjs electron
我目前正在使用React的UI开发ElectronJS应用程序。在某些React组件中,我通过Electron远程使用nodeJS包,因此我将包从主进程导入到渲染器进程中。看起来像这样:
main.js
global.moment = moment;
Run Code Online (Sandbox Code Playgroud)
Component.js
const remote = window.require('electron').remote;
const moment = remote.getGlobal('moment');
Run Code Online (Sandbox Code Playgroud)
在开始使用Jest进行单元测试之前,一切工作正常。
我创建了以下第一个测试用例:
it('renders without crashing', () => {
const div = document.createElement('div');
ReactDOM.render(<App />, div);
});
Run Code Online (Sandbox Code Playgroud)
运行此测试将为我提供以下输出:
TypeError: window.require is not a function
Run Code Online (Sandbox Code Playgroud)
我不知道如何解决此问题,也许有人知道如何解决此问题。也许有人知道如何在Electron中设置React的单元测试,该单元测试允许在React组件中使用nodeJS包。
感谢您的帮助。
小智 0
尝试在 src/setupTest.js 中添加它
window.require = require;
参考:Jest 使用 window.require 测试 Electron/React 组件
归档时间: |
|
查看次数: |
315 次 |
最近记录: |