Cypress系列(48)- and() 命令详解
如果想从头学起Cypress,可以看下面的系列文章哦
https://www.cnblogs.com/poloyy/category/1768839.html
作用
- 创建一个断言,断言将自动重试,直到它们通过或超时
- 和 should() 一个用法
语法格式
.and(chainers)
.and(chainers, value)
.and(chainers, method, value)
.and(callbackFn)
参数说明
- chainers:断言器
- value:需要断言的值
- method:需要调用到的方法
- callbackFn:回调方法,可以满足自己想要断言的内容;且总是返回前一个 cy 命令返回的结果,方法内的 return 是无效的;会一直运行直到里面没有断言
and() 返回的结果
在大多数情况下,.and() 返回与上一个命令相同的结果
cy .get('nav') // 返回 <nav> .should('be.visible') // 返回 <nav> .and('have.class', 'open') // 返回 <nav>
但是,某些 chainer 会改变返回的结果
cy .get('nav') // 返回 <nav> .should('be.visible') // 返回 <nav> .and('have.css', 'font-family') // 返回 'sans-serif' .and('match', /serif/) // 返回 'sans-serif'
简单的栗子
对同一结果操作的栗子(button 元素)
cy.get('button').should('have.class', 'active').and('not.be.disabled')
chainer 改变返回结果的栗子
html 代码
<li> <a href="users/123/edit">Edit User</a> </li>
cypress 代码
cy .get('a') .should('contain', 'Edit User') // 返回的是 <a> .and('have.attr', 'href') // 返回的是 href 的值 .and('match', /users/) // 返回的是 href 的值 .and('not.include', '#') // 返回的是 href 的值
method + value 参数的栗子
断言 href 属性值是否等于 /users
cy .get('a') .should('have.class', 'active') .and('have.attr', 'href', '/users')
标签:
Cypress
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· 周边上新:园子的第一款马克杯温暖上架
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· 使用C#创建一个MCP客户端
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!