Cypress 元素定位
**
前言
**
Cypress含有多种定位方式我们无需担心因为定位导致测试失败,Cypress有独一无二的定位策略能使你摆脱元素定位的噩梦。
Cypress专有选择器
- data-cy
- data-test
- data-testid
举例:
<button id='main' class = 'btn' data-cy = 'submit'>submit<button>
<button id='main' class = 'btn' data-test= 'submit'>submit<button>
<button id='main' class = 'btn' data-testid= 'submit'>submit<button>
获取元素方法:
cy.get(’[data-cy=submit]’).click()
cy.get(’[data-test=submit]’).click()
cy.get(’[data-testid=submit]’).click()
举例:
<tbody><tr><th>用户名</th><td><input class="form-control" type="text" name="account" id="account" autofocus=""></td></tr><tr><th>密码</th><td><input class="form-control" type="password" name="password"></td></tr><tr><th></th><td id="keeplogin"><div class="checkbox-primary"><input type="checkbox" name="keepLogin[]" value="on" id="keepLoginon"> <label for="keepLoginon">保持登录</label></div></td></tr><tr><td></td><td class="form-actions"><button type="submit" id="submit" class="btn btn-primary" data-loading="稍候...">登录</button><input type="hidden" name="referer" id="referer" value="/zentao/">
<input type="hidden" name="verifyRand" id="verifyRand" value="1281275466">
<a href="/zentao/user-reset.html">忘记密码</a></td></tr></tbody>
- #d选择器
#id选择器通过html元素id属性来获取DMO
获取用户名input元素方法:
cy.get('#account').click()
- class类选择器
类选择器通过html元素class属性来获取DMO
获取用户名input元素方法:
cy.get('.form-control').click()
- attributes属性选择器
类选择器通过html元素class属性来获取DMO
获取用户名input元素方法:
cy.get('[input[id = "account"]]').click()
- :nth-child(n)选择器
:nth-child(n)选择器匹配属于其父元素的第n个子元素,不论元素的类型。
获取用户名DOM元素方法:
cy.get(tbody > tr:nth-child(1) > th')
- Cypress.$定位器
Cypress可以使用jQuery选择器定位
Cypress.$('#account') 等价于 cy.get('#account')
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家的支持。
更多文章关注小编公众号:自动化测试 To share
Cypress 元素定位相关推荐
- cypress 框架介绍及元素定位
一.cypress测试框架目录介绍 fixtures -- 测试家具,需要依赖的静态数据 plugins -- 插件,扩展增强cypress功能 support -- 支持文件,通用配置信息 inte ...
- 自动化测试元素定位“最佳实践”
最近在翻阅cypress文档的时候发现一些关于自动化测试中元素定位的思考,觉得很有意思,这里跟大家分享一下. 核心概念 其实元素定义的核心概念很简单,一些元素总有自己独一无二的一些特点,比如我们每个人 ...
- xpath定位元素方法_测试数十次,总结了APP元素定位的万能方法
定位不到元素时候,一定很头大,最近一直在跑自动化流程,经常因为各种原因定位不到元素,经过数十次的尝试,我发现尤其是H5页面,出现定位不到元素的可能性更大,也总结尝试发现了在H5里面,通过切换上下文后用 ...
- App自动化元素定位不到?别慌,3大工具帮你解决
在日常的android app自动化测试工作当中,很多朋友在元素定位时,会遇到以下类似的报错: 然后会来问,这是啥情况? 一般情况下,都会送上以下亲切的关怀: 1)adb能识别到设备吗? 2)设备有被 ...
- css定位页面元素,页面元素定位-CSS元素基本定位
基本定位 """属性定位 一 """ # #通过id # driver.find_element_by_css_selector(" ...
- html 相对于父标签位置,css子元素如何相对父元素定位?
在css中,可以使用position属性,通过给父元素设置相对定位"position:relative;"样式,给子元素设置绝对定位"position:absolute; ...
- android获取元素路径,Appium元素定位(name、classname、相对路径、绝对路径\、list)...
元素通过name元素定位 Appium的name元素定位对应的是Android上的text字段,语法: driver.find_element_by_name('安检测速').click() 缺点:部 ...
- 在selenium中使用css选择器进行元素定位(一)
大家在使用selenium元素定位的时候,通常更多使用的是XPATH,css定位方式用得比较少 但有时候css定位方式还是有一些优势的, 优势1:一般情况下定位速度要比XPATH快 优势2:语法要比X ...
- 4、通过uiautomatorviewer实现appium元素定位
熟悉selenium自动化的小伙伴应该知道WebDriver 提供了八种元素定位方法: id name class name tag name link text partial link text ...
最新文章
- Druid 0.2.18 发布,阿里巴巴数据库连接池
- JavaScript中的JSON
- python 统计2^2^2^2^2的各数字出现次数
- 改善程序代码质量的一些技巧
- c语言复制粘贴源码,c语言函数memccpy()如何复制内存中的内容实例源码介绍
- 基于DirectShow的局域网内音视频流的多机共享
- mmdnn cannot import caffe
- 在notepad++中运行python代码
- eclipse lombok插件安装_你干啥的?Lombok
- 信息学奥赛一本通 1820:【00NOIP提高组】进制转换 | 洛谷 P1017 [NOIP2000 提高组] 进制转换
- 算法眼中的世界是什么样子?他们用一些彩色方块画了出来
- html 成新段落,HTML 段落
- [渝粤教育] 中国地质大学 经济学原理 复习题
- linux支持ext2格式吗,linux正统标准文件系统ext2详解
- 夏宇闻《Verilog数字系统设计教程》 - 第1章 Verilog的基本知识
- 两款WiFi无线网络扫描工具软件 WirelessMon Xirrus WiFi Inspector
- 无损音频flac转mp3
- 【大学物理·早期量子论和量子力学基础】量子力学中的氢原子问题
- u盘制作启动盘后空间容量变小解决方法
- 如何在本地进行一个IP访问多个域名
热门文章
- 一个面试我的后端妹子问的405错误
- 以太网已连接却无法联网的解决记录
- 信息与电脑杂志信息与电脑杂志社信息与电脑编辑部2022年第8期目录
- C++封装dll供C#调用获取U盘/磁盘序列号信息
- 微型计算机nuc 6i5syk,Intel 英特尔 NUC Kit NUC6i5SYH 紧凑型准系统 开箱(附让人崩溃的系统问题)...
- 2022-2027年中国移动音乐行业市场调研及未来发展趋势预测报告
- C#开发OPC客户端
- 从键盘上输入一个字符,如果它是小写字母,则把它转换成大写字母输出;否则,直接输出。
- nginx、php-fpm、mysql用户权限解析
- FPGA的PS还有什么PL是什么意思