在赛普拉斯中运行测试的所有断言

黑暗米奇

我有一个关于测试结构的问题。文档清楚地说明与多个断言,而不是与单个断言多个测试写测试。

但是,如果我想测试多个元素是否可见,则如果第一个元素不可见,则测试将失败,因此我对其他元素一无所知。我有什么办法可以运行所有断言?

it("Page should show two actions", () => {
  cy.visit("users/list");
  cy.get("[data-cy=createUser]")
    .should("be.visible")
    .and("have.text", "Create user");
  cy.get("[data-cy=exportUserData]")
    .should("be.visible")
    .and("have.text", "Export data");
});
黑暗米奇

显然我只是没有找到正确的措辞。当然,它被称为soft assertion而不是被塞普拉斯(Cypress)所使用,实际上违反了柴(Chai)的主张哲学。尽管我确实找不到赛普拉斯(Cypress)或柴(Chai)的官方文档,可以告诉我为什么他们反对软断言,但有一些解决方法。

您可以做的是:

  • 使用此处提到的npm软件包软断言
  • 实现它自己提到这里(可以打破赛普拉斯的重试/超时机制)

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章