Cypress系列(61)- 断言最佳实践

简介: Cypress系列(61)- 断言最佳实践

如果想从头学起Cypress,可以看下面的系列文章哦

https://www.cnblogs.com/poloyy/category/1768839.html

 

背景


  • Cypress 的断言库是基于 Chai 断言库的
  • 并且增加了对 Sinon-Chai,Chai-jQuery 断言库的支持,带来了强大的断言功能
  • Cypress 支持 BDD(expect/should)和 TDD(assert)格式的断言

 

BDD、TDD 格式断言的简单栗子


BDD

image.png


Cypress 命令内置的断言


Cypress 命令通常具有内置的断言,这些断言将导致命令自动重试,以确保命令成功(或者超时后失败)

it('cypress 命令自带断言', function () {
    cy.wrap({body: {name: 'poloyy'}})
    .its('body')
    .should('deep.eq', {name: 'poloyy'})
});


Cypress 有哪些常见内置断言操作的命令

image.png

Cypress 提供两个方法来断言


隐性断言:should()、and()

cy
.get('form')
.should('be.visible')
.and('have.class', 'open')


显性断言:expect

expect 允许传入一个特定的对象并且对它进行断言

expect(true).to.be.true

 

混合使用隐性断言和显性断言

cy.get('.action-email')
.type('fake@email.com')
.should(($el) => {
    expect($el).to.have.value('fake@email.com')
    expect($el).to.be.visible
})


TDD、BDD 常见断言


BDD 形式的断言

image.png

image.png

image.png

TDD 形式的断言

image.png

image.png


相关文章
|
9月前
阿萨学工具:Apifox 用Mock.js写高级Mock的期望
阿萨学工具:Apifox 用Mock.js写高级Mock的期望
227 0
|
6月前
|
算法 测试技术 Python
Python接口自动化测试框架(基础篇)-- 有点意思的运算符
这篇文章介绍了Python中的各种运算符,包括算术运算符、比较运算符、赋值运算符、逻辑运算符、成员运算符、位运算符和身份运算符,并讨论了运算符的优先级,以及序列类型的相关知识。
32 0
Python接口自动化测试框架(基础篇)-- 有点意思的运算符
|
网络协议 jenkins 测试技术
python接口自动化(二十五)--unittest断言——下(详解)
本篇还是回归到我们最初始的话题,想必大家都忘记了,没关系看这里:传送门 没错最初的话题就是登录,由于博客园的登录机制改变了,本篇以我找到的开源免费的登录API为案例,结合 unittest 框架写 2 个用例。同样我们先来看一下接口文档。
167 0
python接口自动化(二十五)--unittest断言——下(详解)
|
测试技术 Python
python接口自动化(二十三)--unittest断言——上(详解)
在测试用例中,执行完测试用例后,最后一步是判断测试结果是 pass 还是 fail,自动化测试脚本里面一般把这种生成测试结果的方法称为断言(assert)。用 unittest 组件测试用例的时候,断言的方法还是很多的,下面介绍几种常用的断 言方法:assertEqual、assertIn、assertTrue。想了解更多可以点击 传送门 看一下最后的小结有大致介绍。
308 0
python接口自动化(二十三)--unittest断言——上(详解)
|
测试技术 C++ Python
pytest 执行规则_基本用法_常用插件_常用断言_常用参数
pytest 执行规则_基本用法_常用插件_常用断言_常用参数
|
Web App开发 JSON 测试技术
python接口自动化(二十四)--unittest断言——中(详解)
上一篇通过简单的案例给小伙伴们介绍了一下unittest断言,这篇我们将通过结合和围绕实际的工作来进行unittest的断言。这里以获取城市天气预报的接口为例,设计了 2 个用例,一个是查询北京的天气,一个是查询 南京为例,你也可以查询别的城市的天气预报。
172 0
python接口自动化(二十四)--unittest断言——中(详解)
|
测试技术
自动化测试教程(15)数据断言
(4)通过比对页面元素的属性信息,检查测试用例执行结果的正确性,编写代码如下:FindElement().get_attribute(“value”)断言以后用的非常多,他可以判断我们程序是否正确,也可以判断数据驱动后结果是否正确,也可以判断内容是否正确,用处很多,需要熟练掌握。(1)通过比对页面元素的文本信息,检查测试用例执行结果的正确性,编写代码如下:Find_element().text。(3)通过对比网址信息,检查测试用例执行结果的正确性,编写代码如下:Driver.current_url。
自动化测试教程(15)数据断言
|
测试技术 Python
软件测试|Pytest必会技巧(四)使用autouse实现自动传参
软件测试|Pytest必会技巧(四)使用autouse实现自动传参
Cypress如何写断言?
大家好,我是阿萨。之前写post的断言时写过一篇文章。[用Postman 如何设置断言?]文章提到过Postman 用chai 写断言。cypresss 其实也是用chai写断言的。
334 0
Cypress系列(5)- 自定义 Cypress
Cypress系列(5)- 自定义 Cypress
244 0
Cypress系列(5)- 自定义 Cypress