我正在开发处理模态窗口中的一些逻辑的 Electron 应用程序。这些窗口正在等待异步操作解决,然后自动关闭。现在我正在努力使用 Spectron 和 Jest 测试这种行为:似乎没有方法可以捕捉窗口的关闭然后继续进行其他测试。
目前我的代码是
it('doing its job', async () => {
// awaits and expects that aren't related
await app.client.click('button[data-role="close"]');
await new Promise(r => setTimeout(r, 1000));
expect(await client.getWindowCount()).toBe(1);
});
它有效,但我发现它非常反模式。我想知道是否有任何方法可以做类似的事情
it('doing its job', async () => {
// awaits and expects that aren't related
await app.client.click('button[data-role="close"]');
await app.client.waitUntilWindowCloses(windowIndex);
expect(await client.getWindowCount()).toBe(1);
});
任何帮助表示赞赏。