首页 > 其他分享 >Cypress----常见元素定位

Cypress----常见元素定位

时间:2024-04-02 14:34:50浏览次数:20  
标签:定位 get Cypress 元素 should ---- cy contain type

一:常用方法和函数

  • 最常用的查找元素的命令有:get | contains | find | first 等等

// cy.get()  根据元素属性查找元素
// .last()   查找到多个元素的情况下,选择最后一个元素  
// .first()   查找到多个元素的情况下,选择第一个元素 
// .contains('XX') 元素内容为XX
cy.get('i[class="icon-font icon-search-basic spice-seach-box-button"]').last().click()
cy.get('div[class="menu-it it-one"]').contains('我的账户').should('be.visible');
  • 最常用的动作命令有:visit | click | type | realHover | focus等等

// click()                点击
// dblclick()             双击
// rightclick()           右击
// type('{enter}')        回车(模拟键盘操作)
// visit()                打开url
// type('XX')             输入XX内容(元素中输入内容)
//realHover()             鼠标悬停在按钮上
//focused()               点击元素后判断当前元素是否聚焦
//screenshot()            屏幕截图
//clear()                 清除内容
//

cy.get('input[id="keyword"]').last().type(‘张三’);           //输入内容张三
cy.get('input[id="keyword"]').last().type('{enter}');       //输入内容后,找到回车进行搜索
cy.visit('https://www.baidu.com/')                          //打开百度url
cy.get('[data-cy="button"]').realHover();                   //鼠标悬停在按钮上

//点击元素后判断当前元素是否聚焦
cy.get('.misc-form').find('#name').click()
cy.focused().should('have.id', 'name')

cy.screenshot('my-image')    // 屏幕截图,保存路径cypress/screenshots/my-image.png


cy.get('input[username="name"]').clear()      //清除用户名

 

  • 断言命令一般用should,should常用方式:

//should('be.visible')        判断元素是否可见
//should('exist')               判断元素存在
//should('not.exist')         判断元素不存在
//should('contain','XX')     判断元素内容包含XX
//should('have.attr', 'href', '/users')      判断url包含'/users

cy.get('.check-box').should('be.visible')      //判断.check-box是可见的
cy.get('.check-box').should('exist')           //判断元素存在
cy.get('.check-box').should('not.exist')       //判断元素不存在
cy.get('div[class="menu"]')should('contain','张三')   
cy.get('div[class="menu"]').should('have.attr', 'href', '/users') 

 

   

        更多方法,可参考文档1&文档2

 

 

二. 常见的元素定位方法 cy.get()

// 方式1:id 选择器
cy.get('#query-btn').should('contain','Button')
// 方式2:标签 选择器 cy.get('button').should('contain','Button')
// 方式3:属性 选择器 cy.get('[id="query-btn"]').should('contain','Button')
// 方式4:标签+属性 选择器 cy.get('button[id="query-btn"]').should('contain','Button')
// 方式5:class 选择器 cy.get('.query-btn').should('contain','Button')
// 方式6:级联混合 选择器 cy.get('#querying .well>button').should('contain','Button') //方式7::nth-child(n) cy.get(tbody > tr:nth-child(1) > th')

 

 

 

三.混合元素定位(同时使用多种元素属性进行定位元素)

(1)  cy.get('input[type="text"].use-input').type(name)

 

 

(2). class 定位

 

 

 

标签:定位,get,Cypress,元素,should,----,cy,contain,type
From: https://www.cnblogs.com/Z-Queen/p/17836461.html

相关文章

  • java安装(找不到jre还苦恼的同志们)-彗星,请放弃jre
    我写了那么多的文章,自我感觉python爬虫是最有含金量的一片了。结果Java安装阅读量始终是第一位,哭笑不得啊。2023.06.11改名博文名称为java安装(找不到jre还苦恼的同志们)-彗星,请放弃jre。jre就是一道彗星,从java的生涯已经结束了,大家不必纠结。看这个文章的人大部分都是刚刚入......
  • DFS算法
    DFS,即深度优先搜索(Depth-FirstSearch),是一种用于遍历或搜索树或图的算法。它从起始节点开始,沿着树的深度尽可能远的路径探索,直到达到最深的节点,然后回溯到上一个节点,继续探索其他分支。DFS通常使用递归或栈来实现。以下是一些常见的DFS算法和应用:二叉树的DFS:在二叉树中,DF......
  • 状压dp板子(cf div4 #937)
    #include<bits/stdc++.h>usingnamespacestd;intn;vector<int>v[20];stringa[20],b[20];booldp[500010][20];voiddfs(ints,intnow){dp[s][now]=true;for(autonxt:v[now]){if(s&(1<<nxt))continue;......
  • MySQL分组查询实例
    DDL——学生表——成绩表CREATETABLE`result`(`rid`int(11)NOTNULLAUTO_INCREMENTCOMMENT'成绩编号',`testName`varchar(255)DEFAULTNULLCOMMENT'测试名称',`score`double(4,2)DEFAULTNULLCOMMENT'成绩',`studentId`int(11)DEFAU......
  • 深浅拷贝
    浅拷贝使用方式importcopy#浅拷贝copy.copy()拷贝原则对可变类型对象进行浅拷贝,只做顶层拷贝对不可变类型对象进行浅拷贝,那么不拷贝深拷贝使用方式importcopy#深拷贝copy.deepcopy()拷贝原则对可变类型对象进行深拷贝,除了顶层拷贝,还会......
  • 开放式耳机怎么选购性价比高?五大2024优质机型总结!
    2023年是开放式耳机乘风破浪的一年,开放式耳机的销量在这一年内增长迅速,越来越多的品牌进入到开放式耳机的市场,从市场销量来看开放式耳机已经成为了潮流新宠,越来越多的消费者不仅知道开放式耳机,并且还在体验开放式耳机,但开放式耳机的市场品牌众多,型号多样,消费者会有一定的选择困......
  • 优化Zabbix系统实现性能提升(详细操作指引)
    一、数据库优化1.将MySQL数据库升级到最新版本操作步骤:查看当前版本:mysql-V升级到最新版本:yuminstallmysql-server-y2.调整MySQL数据库参数以下是一些重要的参数及其建议值:innodb_buffer_pool_size:用于存储InnoDB引擎的数据缓存,建议设置为系统内存的......
  • 京东云“智能编码”上线了!免费试用
    智能编码JoyCoder是一款基于大语言模型、适配多种IDE的智能编程助手,可以为研发人员提供代码预测续写、UI草图转前端代码、生成单元测试、代码安全漏洞自动识别及修复、一键生成接口文档、AI智能问答等功能。助力开发者高效、流畅、智能化地编程!AI辅助编程生成式AI技术正......
  • Docker in Docker原理与实战
    一、DockerinDocker是什么?DockerinDocker(DinD)。简单来说,就像是“盒子里装盒子”,也就是在一个Docker容器里面跑起了另一个Docker服务。想象一下,你有一个神奇的集装箱(第一个Docker容器),而在这个集装箱里,还塞进去了一个小一号的集装箱(第二个Docker守护进程)。这样,你就可以......
  • MySQL分组查询实例
    1、DDL——学生表——成绩表CREATETABLE`result`(`rid`int(11)NOTNULLAUTO_INCREMENTCOMMENT'成绩编号',`testName`varchar(255)DEFAULTNULLCOMMENT'测试名称',`score`double(4,2)DEFAULTNULLCOMMENT'成绩',`studentId`int(11)DEF......