单击后如何在 cypress 中等待页面完成重新加载?

mar*_*dok 7 cypress

我收到表单,当我触发单击提交按钮时,这会导致刷新当前页面。之后我想做一些断言。我如何知道页面已完成刷新并且我可以开始搜索元素?

cy.get('#formButton').click() // adds new item and refresh page
// do assertions on page
Run Code Online (Sandbox Code Playgroud)

Dee*_*eep -4

5种方式:

1) 做SPA不刷新,改变DOM后使用callback/promise;

2)设置cookie,刷新页面,每次页面加载时使用条件如下:

if (existsRefreshCookieAfterFormSubmit()) { ...
Run Code Online (Sandbox Code Playgroud)

3)只需阻止表单发送,例如:

form.onsubmit = function() { return false; };
Run Code Online (Sandbox Code Playgroud)

4)使用<a>替代<button><input>

5)不要用作<form>输入的父级,仅使用输入。