后Selenium时代,网页自动化测试用Cypress
本文技术难度★★★,初学自动化测试的朋友慎点!否则会引起焦虑等不适症状,严重者会怀疑自己技术人生!

来自Cypress官网首页!
Web开发飞速换代!
table控制页面OUT了!
原生态手写网页OUT了!
纯原生态JS写特效OUT了!
但是,司职网页自动化测试的Selenium,几乎没变化!
如果某一天你被告知,Selenium不能用了,网页自动化小伙伴何去何从?!

现实点儿吧,从现在开始,看看有什么能替代Selenium的才是真理!
Cypress是一个选择!
Cypress,基于Node.JS的Web自动化测试工具。官网:www.cypress.io
Cypress是个JavaScript的测试框架,所以前提条件是配置好Node.JS环境,本文不赘述。
安装条件
• macOS 10.9 and above (64-bit only)
• Linux Ubuntu 12.04 and above, Fedora 21 and Debian 8 (64-bit only)
• Windows 7 and above
安装过程很简单,直接 npm install cypress --save-dev,后面的一系列依赖由Node.JS自动会完成。

出现类似上面的内容,如:“+ cypress@X.X.X ”以及后面的added XXX packages from YY contributors… found 0 vulnerabilities。说明安装没问题了。
默认会在Windows用户主目录下的node_modules目录的.bin目录下创建cypress命令。
比如,笔者电脑用户名为:public.DESKTOP-J5M2NO4,那么cypress命令路径为:C:Userspublic.DESKTOP-J5M2NO4 ode_modules.bin
怎么判断是否装好了?
不如直接开始Cypress首次航行!
首先,新建一个目录,例如:c:workspaceswebproject。
其次,切换到该目录,运行命令:npx cypress open
Cypress会打开一个对话框。

这个对话框是一个使用范例,教用户如何编写测试用例的。
默认情况下,使用Chrome浏览器。见右上角。
当然,点击右上角“Chrome 74”,可以切换Cypress自己的浏览器(不推荐)。
选好浏览器,点击“run all”,一系列示例测试用例开始执行了。每个.js文件就是一个测试用例。

执行过程,可以看到具体动作和对应的测试用例代码,可以说是相当人性化了!

抛开JS语法不谈,看看右侧代码示例,Cypress还是很接近人类语言的。
到此,Cypress安装结束,示例代码都有了,余下的可以自己探索。
Cypress官方文档非常全面!而且,确实功能强大!
本文阅读量如果突破4K,笔者将继续手把手教大家怎么写case,怎么测试APP。
作 者:Testfan Covan
出 处:微信公众号:自动化软件测试平台
版权说明:欢迎转载,但必须注明出处,并在文章页面明显位置给出文章链接
后Selenium时代,网页自动化测试用Cypress的更多相关文章
- python+selenium实现网页自动化与爬虫技术
举例某购物网站,通过selenium与python,实现主页上商品的搜索,并将信息爬虫保存至本地excel表内. 一.python环境与selenium环境安装 python在官网下载并安装并且设置环 ...
- C#使用Selenium网页自动化
工作中很多时候经常需要网抓数据或者把数据填写到网站上,使用Selenium将其自动化是一种不错的选择.Selenium其实是一个用于Web应用程序测试的工具,测试你的应用程序看是否能够很好地工作在不同 ...
- HTTP lab01 做一个简单的测试用 web页面
做一个简单的测试用 web页面 1.安装httpd服务 yum install httpd 安装完httpd服务后,系统就自动生成了/var/www/html目录 创建一个 ...
- 【Selenium01篇】python+selenium实现Web自动化:搭建环境,Selenium原理,定位元素以及浏览器常规操作!
一.前言 最近问我自动化的人确实有点多,个人突发奇想:想从0开始讲解python+selenium实现Web自动化测试,请关注博客持续更新! 二.话不多说,直接开干,开始搭建自动化测试环境 这里以前在 ...
- 【Selenium05篇】python+selenium实现Web自动化:读取ini配置文件,元素封装,代码封装,异常处理,兼容多浏览器执行
一.前言 最近问我自动化的人确实有点多,个人突发奇想:想从0开始讲解python+selenium实现Web自动化测试,请关注博客持续更新! 这是python+selenium实现Web自动化第五篇博 ...
- GPU计算的后CUDA时代-OpenACC(转)
在西雅图超级计算大会(SC11)上发布了新的基于指令的加速器并行编程标准,既OpenACC.这个开发标准的目的是让更多的编程人员可以用到GPU计算,同时计算结果可以跨加速器使用,甚至能用在多核CPU上 ...
- 云时代IDC自动化运维的几大神器
云时代IDC自动化运维的几大神器 2016年09月18日 10:27:41 天府云创 阅读数:1715 版权声明:本文为EnweiTech原创文章,未经博主允许不得转载. https://blog ...
- 【Selenium02篇】python+selenium实现Web自动化:鼠标操作和键盘操作!
一.前言 最近问我自动化的人确实有点多,个人突发奇想:想从0开始讲解python+selenium实现Web自动化测试,请关注博客持续更新! 这是python+selenium实现Web自动化第二篇博 ...
- 【Selenium06篇】python+selenium实现Web自动化:日志处理
一.前言 最近问我自动化的人确实有点多,个人突发奇想:想从0开始讲解python+selenium实现Web自动化测试,请关注博客持续更新! 这是python+selenium实现Web自动化第六篇博 ...
随机推荐
- JS中正则匹配开头不带空格,结尾也不带空格的字符串
在做项目的时候,要求限制SSID的长度.以及开头和结尾不能是空格. var reg = /^\S.{0,30}\S$/ "$$$ $$".match(reg); ==> ...
- javascript fetch 跨域请求时 session失效问题
javascript 使用fetch进行跨域请求时默认是不带cookie的,所以会造成 session失效. fetch(url, { method: 'POST', credentials: 'in ...
- java JDBM2 的几个简单实例
JDBM2 提供了 HashMap 和 TreeMap 的磁盘存储功能,简单易用,用于持久化数据.特别适合用于嵌入到其他应用程序中. 磁盘数据库 HelloWorld.java import java ...
- PAT天梯赛 L2-026. 小字辈 【BFS】
题目链接 https://www.patest.cn/contests/gplt/L2-026 思路 用一个二维vector 来保存 每个人的子女 然后用BFS 广搜下去,当目前的状态 是搜完的时候 ...
- Algorithm: Euler function
欧拉函数. phi(n)表示比n小的与n互质的数的个数,比如 phi(1) = 1; phi(2) = 1; phi(3) = 2; phi(4) = 2; phi(5) = 4; 性质: 1. 如果 ...
- android RefBase、sp、wp
首先RefBase在android的c++部分是作为一个所有类的基类,其作用跟Java中的Object类似 这个类中存在一个私有成员: weakref_impl* const mRefs;(weakr ...
- eval函数用法
JavaScript 全局对象 定义和用法 eval() 函数可计算某个字符串,并执行其中的的 JavaScript 代码. 语法 eval(string) 参数 描述 string 必需.要计算的字 ...
- C#中XML解析的增加修改和删除
01添加xml节点 private void AddXml(string image, string title) { XmlDocument xmlDoc = n ...
- CISCO-更新路由器IOS
1,查看flash,复制IOS文件名,再上传IOS 2,传送完毕查看下flash Router# show flash: 查看flash中的信息 Directory of flash: 1 -rw- ...
- BeginPaint/EndPaint(CPaintDC)与GetDC(CClientDC)的区别
在OnPaint函数中,用CClientDC dc(this)代替CPaintDC(this)后,界面不断闪烁. 说明:CClientDC是对GetDC的使用封装, CPaintDC是对BeginPa ...