You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Cypress中统计类名匹配指定模式的标签数量?

在Cypress中统计符合类名模式的标签数量

方法1:使用CSS属性选择器进行前缀+后缀匹配

针对类名以walkme-开头、以-tab-name结尾的元素,可以直接组合CSS属性选择器定位,再获取元素集合的长度:

// 验证数量是否为预期值
cy.get('[class^="walkme-"][class$="-tab-name"]').its('length').should('eq', 2)

// 若需要获取数值并做后续处理
cy.get('[class^="walkme-"][class$="-tab-name"]').its('length').then(count => {
  console.log(`符合条件的标签数量:${count}`)
  // 这里可添加断言、变量赋值等自定义逻辑
})
  • [class^="walkme-"]:匹配类名以walkme-开头的元素
  • [class$="-tab-name"]:匹配类名以-tab-name结尾的元素
  • 两者组合后,可精准选中所有符合walkme-*-tab-name模式的标签

方法2:使用.filter()结合正则实现灵活匹配

如果需要更严格的规则(比如确保类名中间是数字),可以用正则表达式配合.filter()筛选元素:

cy.get('[class*="walkme-"]').filter((index, element) => {
  // 正则匹配格式:walkme-数字-tab-name
  return /walkme-\d+-tab-name/.test(element.className)
}).its('length').should('eq', 2)
  • 先通过[class*="walkme-"]选中所有包含walkme-类名的元素
  • 再用.filter()遍历元素,通过正则验证类名是否符合要求
  • 最后获取筛选后元素集合的长度

注意事项

如果元素的class属性包含多个类值(比如<div class="foo walkme-1-tab-name bar">),上述两种方法都能正常匹配,因为CSS选择器和正则表达式都会识别到目标类名。

内容的提问来源于stack exchange,提问作者Madhur Navandar

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.06 17:15:09