全新ui自动化测试框架教学——Cypress

前言

在现阶段自动化测试领域大规模普及的是selenium及appium等常规自动化测试工具,但在其中会有遇到很多影响因素导致测试结果不理想和不准确的情况发生。在经过Darren洋对自动化测试工具调研后,发现了Cypress这一款针对端到端的自动化测试工具,可以测试web ui及api自动化测试(最重要的一点是该款工具可以自动生成元素标签语句,针对基础薄弱和零基础的小白非常友好,打工人学习起来也是非常快,非常容易顺手)。

一、安装npm

还没安装node.js的小伙伴请看我之前的博客记录的node.js安装流程。

https://cfycsdnbk.blog.csdn.net/article/details/130383779

二、安装package.json配置文件

在新建的文件夹内执行 npm init -y 命令生成 package.json 文件

复制代码
npm init -y

三、安装cypress

在dos系统中使用以下npm命令安装cypress程序包。

复制代码
npm install cypress --save-dev
复制代码
npm WARN notsup Unsupported engine for cypress@13.6.2: wanted: {"node":"^16.0.0 || ^18.0.0 || >=20.0.0"} (current: {"node":"12.22.12","npm":"6.14.16"})
npm WARN notsup Not compatible with your version of node/npm: cypress@13.6.2
npm WARN CypressProjects@1.0.0 No description
npm WARN CypressProjects@1.0.0 No repository field.

这里因为使用的node.js版本为12左右的,导致cypress版本不支持改node,故使用nvm进行下载切换高版本的node.js。

重新打开dos系统进行安装即可解决版本不兼容问题。

四、打开cypress图形化界面

在dos系统中使用以下命令打开cypress图形化界面。

复制代码
node_modules\.bin\cypress open

选择端到端测试选项。

这里按照自己的浏览器进行选择,这里我选择的是谷歌浏览器。选择后会打开一个全新的本地页面(也就是cypress的操作页面)。

五、创建新示例

进入页面后选择创建空示例。

若点击运行显示窗口报以下错误,则应考虑npm版本是否与cypress存在版本不兼容的问题。

复制代码
Error: Webpack Compilation Error
Module build failed (from C:\Users\Administrator\AppData\Local\Cypress\Cache\13.6.2\Cypress\resources\app\node_modules\babel-loader\lib\index.js):
Error: Cannot find module 'fs/promises'
Require stack:

示例显示效果:

六、运行示例

在js文件进行代码流程的修改,以Darren洋本地构建项目为例。

复制代码
describe('Darren洋自动化测试', () => {
  it('访问首页并搜索', () => {
    cy.visit('http://localhost:8080/EasyBuy/Home?action=index')
    cy.get('input[name="keyWord"]').type('1')
    cy.get('.s_btn').click()
  })
})

修改好后,在浏览器中点击js文件即可运行,运行效果如下:

七、快速获取元素定位语句

相比于自己找标签的语句写法,在cypress中还有一种快速获取标签语句的用法,简直是超级方便,绝对的打工人福利。

直接复制命令啦,这个脚本获取的太轻松啦!!!其余脚本标签获取一样,在这里Darren洋就不过多演示啦!!!下课!!!

相关推荐
慧都小项2 小时前
夜间Web回归跑到一半停了?TestComplete 15.83提升批量测试稳定性
前端·测试工具·数据挖掘·回归·汽车·web
Luminbox紫创测控2 小时前
汽车前照灯阳光灼烧:光学热仿真与太阳光模拟器验证
人工智能·测试工具·汽车·安全性测试·测试标准
东莞市奥普新音频技术有限公司4 小时前
国产音频分析仪怎么选?从性能参数、测试软件到自动化能力
人工智能·科技·测试工具·自动化·音视频·音频
flower_drop4 小时前
测试 Android,不必再在 ADB、投屏、日志之间来回切换
测试工具
我的xiaodoujiao8 小时前
Django 基础知识详细图文教程 1-Django 介绍
后端·python·学习·测试工具·django
降临-max1 天前
Postman断言、数据驱动+Jenkins集成
软件测试·测试工具·postman
qq_161111271 天前
Jenkins+Python自动化测试持续集成详细教程
自动化测试·python·jenkins·教程·持续集成
随风而飘1862 天前
KEITHLEY吉时利 2400 数字源表
人工智能·功能测试·科技·测试工具
程序员三藏2 天前
自动化测试用例编写详解
自动化测试·软件测试·python·功能测试·测试工具·职场和发展·测试用例
测试老哥2 天前
Pytest自动化测试框架tep环境变量、fixtures、用例三者之间的关系
自动化测试·软件测试·python·测试工具·测试用例·pytest·职场发展