【发布时间】:2019-10-25 07:34:24
【问题描述】:
我的代码是这样设置的
1. await page.click(selectors.login.submit)
2. await page.waitForNavigation({waitUntil:'networkidle0'})
3. await page.click(selectors.transation.navLink)
4. await page.waitForResponse(response => response.ok())
5. await page.click(selectors.transation.addNew)
这里,第 5 行不会等到第 4 行完成所有响应。
我已经尝试过使用
Promise.all([
page.click(selectors.transation.navLink)
await page.waitForResponse(response => response.ok())
])
认为 promise 中的所有脚本在进入第 5 行之前首先执行,但由于某种原因,它并没有像它应该发生的那样发生。
我什至尝试使用 await page.waitForNavigation({waitUntil:'networkidle0'}) 而不是 await page.waitForResponse(response => response.ok()) 认为这会有所帮助,但它的作用完全相同
预期的结果应该是先执行page.waitfor函数,让所有请求完成后再继续page.click函数。
【问题讨论】:
标签: typescript testing automation jestjs puppeteer