我正在一个带有随机页面数的测验页面上编写 Cypress 测试。我正在尝试在 Cypress 中编写一个条件,如果它是最后一页,则允许我单击“提交”页面链接,否则如果不是最后一页,它将单击“下一页”链接。
我尝试使用 .contains() 和 .find() 等 cypress 命令,它们似乎没有返回通过/失败响应。我还尝试了各种 if 语句,但是当我使用这些语句时,我最终使用的 cypress 命令要么通过,要么失败,但不会路由到任何备用条件 else。
//点击提交成功或测试失败。如果不是最后一页,则永远不要点击 else 子句。
if (cy.find("button[data-cy=submitBtn]").length > 0)
{
// SUBMIT button exists
cy.get('[data-cy=submitBtn]')
.click()
}
如果满足条件,则预期结果将命中 else 并触发命令。
最佳答案
这应该是您正在寻找的条件:
cy.get("body").then($body => {
if ($body.find("button[data-cy=submitBtn]").length > 0) { //evaluates as true
cy.get("button[data-cy=submitBtn]")
.click();
}
});
我相信您的问题可能与this one重复。
关于javascript - 如何编写条件来检查页面链接/按钮是否对 click() 可见,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57631796/