Mos*_*sho 6 javascript automated-tests cypress
与此相反,我如何不等待页面load事件。我遇到的情况是,单击生成表单提交并开始下载。然后 Cypress 等待load从未发生的页面事件。
我试过了:
setTimeout(
cy.window().then(win => {
win.dispatchEvent(new Event('load'))
}), 5000);
cy.get('#btn').click();
//and also tried:
cy.get('form.excel-data').submit() //redirect to server
//and:
cy.on('window:before:load', (win) => {
win.removeEventListener('load');
})
cy.get('#btn').click();
Run Code Online (Sandbox Code Playgroud)
** 我知道最佳实践以及我不应该下载测试href等...但我的问题仍然存在。
在应用程序端解决了这个问题:
//form submit()...
if (window.Cypress) {
setTimeout(() => location.reload(), 3000);
}
Run Code Online (Sandbox Code Playgroud)
这会在提交发生并下载文件后重新加载应用程序。虽然它并不完美,但它可以工作并且不会影响应用程序。我在赛普拉斯上尝试过的许多其他方法(例如捕获异常)也不起作用。
| 归档时间: |
|
| 查看次数: |
7950 次 |
| 最近记录: |