我正在使用 Puppeteer 和 Jest 来运行一些前端测试。
我的测试如下所示:
describe("Profile Tab Exists and Clickable: /settings/user", () => {
test(`Assert that you can click the profile tab`, async () => {
await page.waitForSelector(PROFILE.TAB);
await page.click(PROFILE.TAB);
}, 30000);
});
有时,当我运行测试时,一切都按预期工作。其他时候,我得到一个错误:
超时 - 在 jest.setTimeout 指定的 5000 毫秒超时内未调用异步回调。
at node_modules/jest-jasmine2/build/queue_runner.js:68:21 <br/> at Timeout.callback [as _onTimeout] (node_modules/jsdom/lib/jsdom/browser/Window.js:633:19)
这很奇怪,因为:
我指定超时为 30000
我是否收到此错误似乎很随机
为什么会这样?
原文由 Asool 发布,翻译遵循 CC BY-SA 4.0 许可协议
您在此处指定的超时时间需要短于默认超时时间。
默认超时为
5000
框架默认为jasmine
在jest
的情况下。您可以通过添加在测试中指定超时但这将特定于测试。或者您可以为框架设置配置文件。
配置 Jest
另请参阅这些线程:
每次测试设置超时 #5055
_使 jasmine.DEFAULT_TIMEOUT_INTERVAL 可配置 #652_
PS:拼写错误
setupFilesAfterEnv
(即setupFileAfterEnv
)也会抛出同样的错误。