我正在制作一个规范文件来测试我在赛普拉斯中的表单,突然弹出:
类型错误:form.submit 不是函数:__cypress/runner/cypress_runner.js:67597:14
这是代码:
cy.get(form).within(($form) => {
cy.root().submit();
});
您可以清楚地看到导致错误的部分是cy.root().submit();
线。 但是当我在控制台上检查元素时,就会出现:
控制台上的根输出
所以,这是一种形式!
我从这里得到了代码 https://docs.cypress.io/api/commands/within.html#Forms
运行截图:
运行测试
我错过了什么?我是否缺少一些依赖性?
PD:我正在使用chrome 79
您还需要在表单提交之前等待(如果没有它,路由可能仍在进行中(。
(您可能可以删除然后第二次等待(
编辑:
cy.server();
cy.route(formRequest.method, formRequest.url).as('form-submit');
cy.wait('@form-submit').its('status').should('eq', 200);
cy.root().submit();