如何在赛普拉斯自动化中为 xpath 执行索引?

How to perform the indexing for xpath in cypress automation?

我想为此在 cypress 自动化中创建通用功能,我想使用定位器和 xpath 来查找元素,但我在 xpath cypress 中使用索引时遇到问题。

在 selenium 自动化中,创建参数化 xpath 很容易,但在 cypress 中面临问题?

Cypress 不直接支持 xpath。您必须使用 xpath 插件。有关如何将此插件添加到您的项目的更多详细信息,请参阅 here

之后,您就可以调用xpath命令了。 对于使用索引,你可以这样写:

      for (const i of [1,2,3]) {
        cy.xpath(`(//button[contains(text(), 'Done')])[${i}]`)
      }

如果你需要参数化你的表达式,你可以定义一个函数:

      function containsAtIndex(i) {
        return cy.xpath(`(//button[contains(text(), 'Done')])[${i}]`)
      }

或者定义一个自定义的 cypress 命令。使用 Cypress Support Pro 插件,只需点击几下即可轻松完成: