Electron-vue实现后台多进程(三. 自动化测试篇)

如果是babel6.23的版本,没什么大的问题。

如果是使用babel-upgrade升级到babel7,要注意自己的electron,之前如果根据提示下载了缺失的依赖,要确认这个依赖是否支持babel7。

首先要移除掉这些库,替换为支持babel7版本的库。例如以下这个是我在排查时寻找到的替换库:

@vue/babel-plugin-transform-vue-jsx

因为babel-plugin-transform-vue-jsx这个库只支持babel6,而@babel/plugin-transform-vue-jsx又不存在。因此寻找很久,才找到一个支持babel7版本的jsx库。

在自动化测试框架中,如果使用spectron,那么需要修改e2e文件夹下的index.js,这个文件的babel-register需要修改为如下:

require('@babel/register')({
  ignore: [ /node_modules/ ]
})

这样就可以将依赖的babel6替换为babel7了。

到这一步,测试框架基本可以正常跑起来。

如果是按照前面两篇文章添加的多进程,还需要修改测试代码如下,使得spectron能绑定到对应的进程,进行测试:

  it('validate application title', function() {
  // 此处的
this.app.client是第一个进程 this.app.client.windowByIndex(1).then(() => {
    
// 此处的this.app.client是第二个进程 let title = this.app.client.getTitle() expect(title).to.equal('civet') }) })
原文地址:https://www.cnblogs.com/webbery/p/14401430.html