盘点2021年最值得学习的自动化测试框架

魔幻的2020年马上就要过去了,竟然有一点点猝不及防。

我们还是要向前看,戴着口罩继续前行,这里就简单盘点一下2021年最值得学习的自动化测试框架吧。

selenium
在这里插入图片描述
毫无疑问,selenium仍然是目前市面上最值得测试同学学习的ui自动化测试框架。

selenium拥有稳定的api,这意味着你每次的selenium版本升级都相当安全。

selenium官方支持java/python/ruby等主流语言,另外由于webdriver协议具有很强的扩展性,因此你几乎可以找到大部分主流语言的selenium binding,比如go/javascript等,这无疑使得selenium在真实项目中的应用变得相对容易。

selenium支持所有的主流浏览器,而且是官方支持,这使得selenium在做兼容性测试上有着天然的优势。

selenium拥有活跃的社区,稳定的核心开发者,广泛的使用人群,这使得你可以非常容易的找到各种文档,资料,教程以及解决你实际遇到问题的各种线索。有时候我们放弃使用一个框架往往是因为我们遇到问题以后尝试各种方法都无法解决,这点在selenium上可能不会成立。

selenium背后的webdriver协议基本上定义了各种ui自动化框架的开发规范,比如怎么开启session,如何定位元素和表示元素等等,这也孕育了一些流行的ui测试框架,比如appium等。

想象这样一种情形:你们公司需要将web的ui自动化测试跑起来,但是测试人员对自动化测试的了解非常有限,希望尽快开始动手尝试,头绪不多,选择却很多,这时候其实就可以无脑选择python+selenium,哪怕用例最终没办法稳定跑起来,但整个学习的过程都会让团队及公司收益。这就跟我们练习跑步一样,尽管最终不是人人都可以去跑马拉松,但练习的工程却能让我们的身体受益。

总之selenium对于测试同学来说是性价比最高的测试工具,并且除了测试,selenium在爬虫,自动化效率提升上面也有天然独特的优势。

推荐程度:🌟🌟🌟🌟🌟,五颗星。

puppeteer

selenium在无界面的浏览器领域一直表现的都很挣扎,比如多年前的headless模式在面对稍微复杂的js页面时就一筹莫展,puppeterr的出现正好弥补了这一遗憾。

关于puppteer我之前有过详细介绍,其实就是无界面的chrome浏览器,这里就不过多解释了,相对于有界面的浏览器,puppeteer有着独特的优势。

google官方出品,chrome团队维护,稳定性相对可以得到保证
相对简单高效的api,使用方便
没有界面,资源占用相对可控,并且可以在浏览器端运行,天生有着云浏览器的潜力和属性
用户众多,资料丰富,遇到一般问题都可以搜索解决;
js语言调用,前端开发者基本没有太大的学习成本
生态丰富
不过原生的pupetter在调试上相对于selenium就没有那么方便了,好在一些第三方扩展可以缓解这些问题。

peppeteer适合这样的场景:对web页面进行持续的性能统计,一些不需要很高效但却要行为真实的爬虫,以及简单持续以及稳定的自动化验证用例。

推荐程度:🌟🌟🌟🌟,四颗星,适合有高级需求的同学

appium
在这里插入图片描述
appium是移动端自动化测试的领导者,是webdriver协议瓜熟蒂落的产物,它的出现看起来在意料之外,但其实也在情理之中。如果你想在andorid/ios以及移动web上都使用同一套框架的话,appium大概是目前的最佳选择。

appium的设计思想来源于selenium,所以有着跟selenium相似的优势

支持多种语言
api简单而且接近selenium
相对活跃的社区以及使用者
如果你对移动端自动化一无所知而且需要快速开始进行自动化测试工作的化,那么闭着眼睛用appium就可以了。 如果你对测试框架的性能以及其他方面有定制性的需求,那么你可能需要花更多的时间研究其他的框架。

推荐程度:🌟 🌟 🌟 🌟 四颗星

cypress
在这里插入图片描述
cypress是一款易用性很强的测试工具,其宣传的口径是下一代的自动化测试工具,从其提供的时间穿梭和实时刷新等功能来看,确实是目前自动化测试领域的game chagers。

cypress是用javascript实现,很好的结合了可视化和专业性,并且提供了强大的debug能力,对于新手来说是非常友好的。

针对selenium的一些祖传问题,比如调试困难,所见并非所得,生态完善但工具链不完善等问题,cypress很好的给出了自己的答案,那就是all in one。只要你用了cypress,那么所有的一切cypress都帮你搞定,如果说用selenium是拼乐高的话,那么cypress就是直接玩拼好的成品,可玩性虽然低了一点,但是所见即所得,这对很多新人来说应该就是正义吧。

推荐程度:🌟🌟🌟 三颗星,生态目前看来还很新,不过潜力巨大

各种语言自带的单元测试框架
比如python的unittest框架,java的junit框架(严格来说junit框架并不是java自带的)等,这些基本的框架就像是盖房子过程中的地基和承重墙,基础打的牢固了,才能万丈高楼平地起。

这些框架其实并不是特别适合对于编程一无所知的纯小白,推荐大家在有一定的语言基础之后进行学习。

推荐程度:🌟🌟🌟🌟🌟 五颗星

愿你我相遇,皆有所获! 欢迎关注微信公众号:程序员一凡

1.免费领取一份216页软件测试工程师面试宝典文档资料。

2.软件测试学习路线以及相对应的视频学习教程免费分享!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
适合人群:【学习前提】 1. 具备python3语言基础 【学习人群】 1. 手工测试人员学习UI自动化测试技能 2. 开发人员转岗测试开发岗位 3. 如具有丰富的自动化测经验,本课程可能并不满足你学习计划:1.下载课程中配套的软件资料 2.结合课件中Demo可完成学习任务课程目标:掌握UI自动化测试框架的设计与实现课程简介:UI自动化框架的设计需储备基础知识,方能完成自动化测试框架的实现,如数据驱动、日志、配置文件等AutoUiTestFrame自动化框架的目录结构初步进行规划,目录结构如下:Config 配置文件的目录v  config.ini 配置文件;v  globalconfig.py 获得日志路径、测试用例路径、测试报告路径、测试数据路径;v  Data 测试数据;v  TestData.xlsx 测试数据。Public 公共文件库v  Common 封装的公共的方法n  Commonconfig.py 公共的参数配置:调试过程中的测试数据等;n  DoExcel.py 操作excel(数据驱动);n  Send_mail.py 发送邮件(html);n  ReadConfigIni.py 读取ini格式的配置文件;n  TestCaseInfo.py  测试用例信息;n  Log.py 日志类。设置日志类,其他模块或文件需要日志类时,调用该文件。v  Pages 使用po模式设计的测试页面n  BasePage.py  基类,对一些测试页面公共方法、属性的封装及webdrive一些方法的二次封装;n  Bing.py 测试页面。Report 测试报告v  Log 日志目录n  *****log日志。v  TestReport 测试报告目录n  ***html测试报告。TestCase 测试用例v  TC_bing.py。Run.py  控制测试用例的运行。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值