自动化测试-web端UI自动化
一、自动化背景概述
(1)为什么要进行自动化测试?
1.黑盒测试回归效率低;
2.手动测试的偶然性和不确定性;
3.回归测试的覆盖率不足;
4.交付的产品质量无法保证,全靠评估;
5.系统越复杂,问题越多;
6.版本迭代快,加班多
(2)自动化测试能解决什么问题?
1.提高出现问题后的响应速率;
2.降低人力成本;
3.提高回归覆盖率;
4.提高回归效率;
5.提高回归的稳定性;
6.能够完善测试体系,防止做重复性工作
(3)自动化测试有哪些不足之处?
1.无法减少成本投入:时间成本+人力成本;
2.自动化适用于回归而不是发现BUG,不适用于冒烟和系统;
3.自动化的维护成本较高,所需要的技术要求偏高;
4.不是所有的系统功能都适合做自动化测试。
(4)什么样的项目适合做自动化?
1.需求稳定、不会频繁变更
自动化测试最大的挑战就是需求的变化,而自动化脚本本身 就是需要修改、Debug(调试),去适应新的功能,如果投入 与产出比太低,那么自动化也就失去了价值和意义,折中的 做法就是选择相对稳定的模块和功能进行自动化测试,变动 较大,需求变更频繁的部分用手动测试
2.多平台运行,有大量的重复工作任务
测试数据、测试用例、自动化脚本的重用性和移植性较强的项目适合做自动化测试,有大量重复性工作的模块适合做自动化测试,降低成本、提高效率和价值。
3.软件维护周期长、有生命力
自动化测试的需求要相对稳定性、长期因为自动化框架的设计、脚本开发与调试均需要时间,如果项目周期较短,没有足够的时间去支持这一过程,那么肯定是以手工测试为主,那自动化测试也就不需要了;
4.被测系统开发规范、可测性强
要求系统架构逻辑清楚,文档比较完善
(5)做UI自动化测试,需要什么技能?
①、前端相关技术HTML、CSS、JavaScript、TCP/IP协议等;
②、一门编程语言比如python、java等,根据个人情况选择;
③、合适的工具和框架比如selenium IDE,ride等;框架比如robot framework等
④、需求分析项目类型,特质,生命周期,是否适合开展自动化测试等;
(6)自动化的分类
image.png1.功能自动化(UI自动化)
使用自动化工具,编写自动化脚本。让浏览器或者手机自动化运行某些操作,并对操作结果和预期结果做出对比
web端自动化
使用的是robotframework框架完成的
app端自动化
使用的是airtest框架完成的
2.接口自动化
使用接口工具,编写断言和批跑等来实现自动化请求接口和自动对比数据;(postman、jmeter)
(7)关于web端UI自动化的知识点
1.Robot Framework是什么?
Robot Framework是一个测试框架,它是使用关键字驱动的。它使用的表格来组织测试过程和测试数据,易于学习和管理。
它是一款基于python语言编写的自动化测试框架工具,具备良好的扩展性,支持关键字驱动,支持多种类型的客户端和接口;
2.****RIDE****是什么?
RIDE是一个自动化脚本编辑器
Ride是一个基于robot framework的一款编辑软件,可视化管理工具。
RIDE 是 Robot Framework 测试数据的编辑器。它使自动化测试用例的创建、运行、测试项目的组织可以在图形界面下完成
3.Selenium2Library库
开源的方法库,ride能够调用这个方法库,里面有很多很强大实用的关键字,能够支持web端UI自动化过程中的大部分关键字需求。
网友评论