首页 > 解决方案 > dom元素属性上的cypress选择器

问题描述

我的网站上有两个 svg 元素:

<svg data-icon="times" ... > ...</svg>
<svg data-icon="sync" ... > ...</svg>

我喜欢根据它们的属性来选择它们data-icon。像这样的东西:

cy.get('svg').filter(?)

cy.get我在andcy.filter部分的文档中没有找到任何内容。我知道我可以通过在元素周围分配类或 id 或使用cy.each函数来获取一个元素来解决这个问题,但对于我的测试,这是一个常见问题,我正在寻找最舒适的解决方案。

标签: javascriptdomcypress

解决方案


您可以直接定位数据属性。代码如下所示:

cy.get('[data-icon="times"]')

这将产生具有data-icon“次”属性的元素。

您可以通过显式仅针对具有该数据属性的 svg 元素来更加具体,如下所示:

cy.get('svg[data-icon="times"]')

这是文档的部分以供更多阅读。


推荐阅读