网络广告网站怎么做,北京海淀建设中路哪打疫苗,哪家培训机构好,学而思的网站哪里做的谈起web自动化测试#xff0c;大家首先想到的是Selenium#xff01;随着近几年前端技术的发展#xff0c;出现了不少前端测试框架#xff0c;这些测试框架大多并不依赖于Selenium#xff0c;这一点跟后端测试框架有很大不同#xff0c;如Robot Framework做Web自动化测试本…谈起web自动化测试大家首先想到的是Selenium随着近几年前端技术的发展出现了不少前端测试框架这些测试框架大多并不依赖于Selenium这一点跟后端测试框架有很大不同如Robot Framework做Web自动化测试本质上还是使用的Selenium包括各语言的xUnit单元测试框架。 多吧这还只是一部分呢你以为这些都是不知名的小项目错了 我特地把Selenium加了进来其中mocha和jtest在Github上的stats是多于Selenium的剩下的其它项目也都不弱。
本文要介绍的是Cypress测试框架! why? 因为人家的文档都是带视频的。 看一下人家官方的文档像这样的视频还有好几段简直是对新手的宠爱。
看到这么好的教程不学一学感觉都对不起人家是的这就是我选择了解一下Cypress的原因。 ###官网
https://docs.cypress.io
The web has evolved. Finally, testing has too.
Web已经进化了最后测试也有。
这类测试框架统称为e2e测试即end to end端到端测试。理论上前端页面由前端框架来测试确实更为合适。这几天我在搭建UI自动化测试框架顺便封装了一些元素定位随着对前端技术的了解我几乎将所有元素定位都换成了CSS配合JS处理一些Selenium很难操作的元素确实效率提高了很多页面元素也没那么难操作了包括学了点Jenkins的配置当然这个话题会放到下一次来分享。 ###安装
安装很简单首先你要安装node.js。
创建cypress_sample练习目录 mkdir cypress_samplecd cypress_sample安装cypress
cypress_sample npm install cypress --save-dev启动cypress
cypress_sample ./node_modules/.bin/cypress open第一次启动Cypress它已经为我们准备了丰富的例子。 通过vs code 打开cypress_sample项目。 在examples/目录下面创建baidu.spec.js文件代码如下 describe(My First Test, function () {it(Does not do much!, function () {cy.visit(https://www.baidu.com)cy.get(#kw, {timeout: 2000}).type(cypress test)cy.wait(100)cy.get(#su, { timeout: 2000 }).click()})
})
上上图找到在Tests列表中找到 baidu.spec.js文件点击运行。 在VS code 中编辑保存脚本后上图的窗口会自动执行速度上比selenium快多了Selenium启动浏览器怎么着也得3~5秒吧上面的脚本不到2秒就跑完了元素定位主要以CSS为主这其实不是问题CSS本来就很强大的说。
也许这是未来前端测试的方向至少对于前端人员来说快速验证界面功能我想不到有什么理由不选择它而是Selenium。当然对于测试人员脚本的可维护性报告的生成以及与持续集成的结合都有一整套成熟的方案。对于Cypress来说其它前端测试框架不了解整合能力还不够强可能JavaScript也是一个门槛。毕竟这两年大家刚学会Python。