Mocha.js Spectron测试失败的原因很奇怪

Mocha.js Spectron测试失败的原因很奇怪,mocha.js,spectron,Mocha.js,Spectron,spectron的新用户*** 我正在尝试编写一个简单的测试,使用spectron检查应用程序窗口计数。下面是代码 const Application = require('spectron').Application const assert = require('assert') const electronPath = require('electron') const path = require('path') const { doesNotReject } = require('as

spectron的新用户***

我正在尝试编写一个简单的测试,使用spectron检查应用程序窗口计数。下面是代码

const Application = require('spectron').Application
const assert = require('assert')
const electronPath = require('electron')
const path = require('path')
const { doesNotReject } = require('assert')
const chai = require('chai');
const chaiAsPromised = require('chai-as-promised');


 describe('Launch app', function() {

let app =  new Application({
  
  path: 'C:/Users/ts/Downloads/file.exe',
  chromeDriverArgs: ["--disable-extensions"],
  env: {
    SPECTRON: true,
    ELECTRON_ENABLE_LOGGING: true,
    ELECTRON_ENABLE_STACK_DUMPING: true
  },
  connectionRetryCount:0
});

beforeEach(async () => { 
  this.timeout(5000); 
  await app.start();
});

it('Shows an initial window', async () => {
  await app.client.waitUntilWindowLoaded();
  await app.browserWindow.focus();
  await app.browserWindow.setAlwaysOnTop(true);
  await app.client.getWindowCount();
    assert.equal(count, 1);
});

after(async () => {
     await app.stop();
  });
})

不幸的是,测试失败的原因很奇怪:

错误:超过2000毫秒的超时时间。对于异步测试和挂钩,确保调用“done()”;如果返回承诺,请确保它已解决

此外,我还看到多个黑色进程滥发信息,我无法捕捉应用程序窗口的焦点

谢谢你的帮助

谢谢

after()应该替换为afterEach吗?否则,您未来的附加测试将出现问题。此外,我认为您需要在每个测试函数的末尾调用“done()”,这样它就知道异步测试已经完成。after()应该替换为afterEach吗?否则,您未来的附加测试将出现问题。另外,我认为您需要在每个测试函数的末尾调用'done()',这样它就知道您的异步测试已经完成。