在Cypress中统计id为chatListHolder的div内含userid的div数量
在Cypress中统计指定元素数量的方法
要获取id为chatListHolder的div下,包含userid的div元素数量,可以通过以下几种方式实现:
直接获取并输出/验证数量
使用Cypress选择器结合:contains()定位目标元素,再通过its('length')获取数量:
cy.get('#chatListHolder div:contains("userid")') .its('length') .then(length => { console.log(`包含userid的div元素数量:${length}`); // 可选:添加断言验证数量符合预期 expect(length).to.be.gte(1); // 示例:期望数量至少为1 });
处理大小写不敏感的场景
如果需要忽略大小写匹配userid,可以用filter()方法自定义匹配逻辑:
cy.get('#chatListHolder div') .filter((index, element) => { return element.textContent.toLowerCase().includes('userid'); }) .its('length') .then(length => { console.log(`匹配到的元素数量:${length}`); });
将数量存入环境变量供后续使用
如果需要在后续测试步骤中复用该数量,可以用.as()别名存储:
cy.get('#chatListHolder div:contains("userid")') .its('length') .as('useridDivCount'); // 后续测试步骤中调用 cy.get('@useridDivCount').then(count => { // 基于数量执行其他操作,比如循环处理元素 for (let i = 0; i < count; i++) { cy.get('#chatListHolder div:contains("userid")').eq(i).click(); } });
内容的提问来源于stack exchange,提问作者Abdelmalek HAMZA
相关产品推荐
相关产品推荐

