nodejs 上剧作家的待处理操作

Pending operations in playwright on nodejs

我正在尝试在单击 link 时获取新页面:

await test.step(`Step name`, async () => {
    const [newPage] = await Promise.all([ 
        context.waitForEvent('page'), 
        page.click('//span[normalize-space(@title)=\'Bup\']')
    ]);
}

我得到了这个页面。对该实例的进一步操作是成功的。但 30 秒后,测试以以下错误结束:

Timeout of 30000ms exceeded.
Pending operations: 
    - browserContext.waitForEvent at "path to the file":48:21
    - at <unknown>

我假设它与承诺有关,但我不明白问题到底是什么。需要帮助。 编剧 v14.0,nodejs v16.7.0。 我 运行 使用以下命令进行测试:npx playwright test tests/diag.spec.mjs --headed

一个奇怪的观察。当我运行它处于调试模式时,没有这样的错误 :

PWDEBUG=1 npx playwright test tests/diag.spec.mjs

好的,我找到了答案,但是有点奇怪。您需要在剧作家配置中增加超时:

https://github.com/microsoft/playwright/issues/8268

您还可以添加 test.slow() https://playwright.dev/docs/api/class-test#test-slow