1

我想运行几周前编写的一些 Spectron e2e 测试,但令我惊讶的是,突然它们都因为同一个原因而停止工作。

在此处输入图像描述

根据错误消息,我正在处理被拒绝的承诺,但我无法弄清楚问题出在哪里。在我的测试用例结束时调用 done 会引发完全相同的错误。

我正在运行以下命令来启动我的测试服:mocha test/e2e

Mocha 然后在运行我的测试之前执行这个 index.js 以支持 ES6+ 特性

'use strict'
//index.js

// Set BABEL_ENV to use proper env config
process.env.BABEL_ENV = 'test'

// Enable use of ES6+ on required files
require('babel-register')({
  ignore: /node_modules/
})

// Attach Chai APIs to global scope
const { expect, should, assert } = require('chai')
global.expect = expect
global.should = should
global.assert = assert

// Require all JS files in `./specs` for Mocha to consume
require('require-dir')('./specs')

之后,它尝试运行这个小的 Login.spec.js,它返回上面提到的错误

import utils from '../utils'
import {Application} from "spectron";
import electron from "electron";

describe(' Login', function () {
    this.timeout(11000);

    it('login form exists', async function (done) {
        this.app = new Application({
            path: electron,
            env: {"SPECTRON_RUNNING":true},
            args: ['dist/electron/main.js'],
            startTimeout: 10000,
            waitTimeout: 10000
        })

        await this.app.start()

        await this.app.client.windowByIndex(1);

        done();
    }) 
})
4

0 回答 0