cypress 如何遍历元素?

简介: cypress 如何遍历元素?

大家好, 我是阿萨。昨天学习了cypress的y元素操作方法。今天我们继续学习cypress的元素遍历方法。

日常我们查找一系列具有相似特征的元素时,经常只想获取到其中某一个元素。该如何获取呢?

  1. children

    比如要获取面包屑中的选中的,就可以使用如何方法:


cy.get('.breadcrumb').children('.active')// 找到Data 元素


2. closest

从字面意思我们就可以知道是离得最近的。是离得最近的父亲元素。


cy.get('.badge')  .closest('ul') // 找到父亲是个列表

3.eq
使用索引去获取元素。通过是一系列元素中的第几个。index 从0 开始。

image.png


cy.get('.traversal-list>li')  .eq(1) //找到siamese

4. filter
过滤,通过指定的选择器去过滤元素。比如一系列的tabpage 里选择选中的那个。

image.png


cy.get('.nav>li')  .filter('.active')  //找到About


5. find
用来查找子孙的,通过选择器查找。

image.png


cy.get('.pagination').find('li').find('a')//找到7个


6. first/last/next/nextall/prev/prevAll
这个就是找个列表里的第一个,最后一个,下一个,以及剩余所有的,qian'm前面一个,前面所有元素。

image.png


 cy.get('.buttons .btn').first() //找到Link
cy.get('.buttons .btn').last() //找到Submit
cy.get('.buttons .btn').first().next() // 找到Button
cy.get('.buttons .btn').first().nextAll() //找到除Link 之外的其他三个
cy.get('.buttons .btn').first().next().prev()// 
cy.get('.buttons .btn').first().next().prevAll()

7 not
从找到的列表里排除某个元素,就用not

image.png


cy.get('.disabled .btn')  .not('[disabled]')//找到Button

8. parent 和parents
这个很好理解。就是找到父元素。

image.png


cy.get('.traversal-cite').parent()cy.get('.traversal-cite').parents()

9. siblings
获取当前元素的兄弟元素。

image.png


cy.get('.pills .active').siblings()//找到Profile 和Messages


10. nextUntil/parentsUntil/prevUntilnextUtil 一直向后找兄弟元素的子元素, 直到遇到指定元素就停
prevUntil 一直向前找找兄弟元素的子元素,直到遇到指定元素就停
parentsUntil 一直找该元素的父元素里的子元素,直到遇到指定元素就停

image.png



 cy.get('.foods-list').find('#nuts').prevUntil('#veggies') //找到 cucumbers, carrots, corn
cy.get('.foods-list').find('#veggies').prevUntil('#nuts')  //找到 cucumbers, carrots, corn
cy.get('.foods-list').find('#corn').parentsUntil('veggies') //找到 cucumbers, carrots, corn
n


今天遍历用处挺广的。

你学会了吗?

相关文章
|
前端开发 JavaScript
cypress 如何定位元素?
cypress 如何定位元素?
324 0
cypress 如何定位元素?
|
存储 开发工具 C++
【树莓派 Pico 和 Pico W】
【树莓派 Pico 和 Pico W】
1797 0
|
4月前
|
安全 JavaScript Java
java Web 项目完整案例实操指南包含从搭建到部署的详细步骤及热门长尾关键词解析的实操指南
本项目为一个完整的JavaWeb应用案例,采用Spring Boot 3、Vue 3、MySQL、Redis等最新技术栈,涵盖前后端分离架构设计、RESTful API开发、JWT安全认证、Docker容器化部署等内容,适合掌握企业级Web项目全流程开发与部署。
325 0
|
弹性计算 测试技术 持续交付
阿里云云效产品使用合集之如何进行自动化测试
云效作为一款全面覆盖研发全生命周期管理的云端效能平台,致力于帮助企业实现高效协同、敏捷研发和持续交付。本合集收集整理了用户在使用云效过程中遇到的常见问题,问题涉及项目创建与管理、需求规划与迭代、代码托管与版本控制、自动化测试、持续集成与发布等方面。
|
数据采集 存储 监控
CDGA|数据治理:让数据与业务伴生的实践路径
在数据驱动的时代,数据已成为企业宝贵资产,蕴含推动业务增长与创新的无限可能。数据治理通过科学策略挖掘、整合、保护数据,成为企业数字化转型的核心驱动力。本文阐述了数据治理的定义、重要性及其实践路径,强调跨部门协作与全员参与,确保数据质量、安全及合规性,支持企业战略目标实现。通过明确数据战略、建立管理体系、推动数据共享和持续优化,数据治理助力企业实现数据与业务的伴生共长。
1162 0
|
物联网 SDN 网络虚拟化
VXLAN:彻底改变网络虚拟化
【7月更文挑战第3天】
1036 0
VXLAN:彻底改变网络虚拟化
|
移动开发 前端开发 JavaScript
整合阿里云播放器播放(1) | 学习笔记
快速学习 整合阿里云播放器播放(1)
384 0
整合阿里云播放器播放(1) | 学习笔记
|
网络协议 网络安全 数据安全/隐私保护
如何在IDEA中使用固定公网地址SSH远程连接服务器开发环境(三)
在IDEA中通过固定公网地址SSH远程连接服务器开发环境,需要配置固定TCP端口以避免地址随机变化。首先,升级cpolar至专业版及以上,然后在官网保留一个固定TCP地址。进入cpolar管理界面,编辑隧道信息,将保留的固定地址填入,更新隧道。最后,在IDEA中新建SSH连接,输入固定地址和端口,验证连接。成功后,即可稳定远程开发。
|
Java 程序员 API
【深入探究 Qt 线程】一文详细解析Qt线程的内部原理与实现策略
【深入探究 Qt 线程】一文详细解析Qt线程的内部原理与实现策略
1097 0
|
存储 JSON Cloud Native
Grafana Loki初体验
Loki介绍Loki是Grafana Labs在2018年开始研发的一款日志系统,使用的开源协议是AGPLv3,Github Star数目前是15.8k。 过去几年Star的趋势增长稳定。 属于日志存储领域的一颗新星。Grana Loki的应用架构采集侧使用 PromtailLoki核心程序(单一二...
1268 7
Grafana Loki初体验