概述
目录
1、挑战
2、适用场景
3、面临的问题
4、自动化测试的设计
(1)三角形模型
(2)椭圆形模型
1、挑战
随着产品交付速度的提升,给测试工作带来了很大的挑战。
1)测试时间被不断压缩;
2)需求的变化给测试工作的开展带来了很大的不确定性。
2、适用场景
我们要想提升测试效率,就尽可能通过自动化手段去完成。自动化测试适用于以下几种典型场景:
1)有大量机械的重复操作,并且会反复执行的场景,比如批量的回归测试;
2)有明确的设计规范且相对稳定的场景,比如接口测试;
3)大批量、跨平台的兼容性测试,比如覆盖多种版本和多种机型的测试;
4)长时间不间断执行的测试,比如压力测试、可用性测试等
以上场景具有几个特点:设计明确、功能稳定、可多次重复、长期大批量执行。解放出的人力可以投入到更有价值的测试活动中,比如探索性测试、易用性测试、用户验收测试等。
3、面临的问题
自动化测试建设面临的问题:
1)投入产出比:很多需求基本上只会上线一次(比如促销活动类需求),实现自动化测试的成本要比手动测试高得多;
2)上手门槛:自动化测试依赖代码方式实现,要开发一套配置化的测试框架和平台,对架构设计和编码能力都有很大的要求;
3)维护成本高:无论是测试环境、测试用例还是测试数据,都需要随着需求的变化不断进行调整,否则就很容易因为自动化测试过时,导致执行失败;
4)测试设备投入高:比如手机App 的测试需要有大量的手机资源,想要覆盖所有的手机型号、操作系统版本,本身就不太现实。
可见自动化测试并不是一把万能钥匙,我们也不能指望一切测试都实现自动化。只有在合适的领域,自动化测试才能发挥出最大价值。
4、自动化测试的设计
(1)三角形模型
1)单元测试更多是由开发主导的,开发领导的态度就决定了运行的效果。
2)UI 层是唯一能够模拟用户真实操作场景的端到端测试,页面上的一个按钮可能触发内部几十个函数调用,和单元测试每次只检查一个函数的逻辑不同,UI 测试更加关注模块集成后的联动逻辑,是集成测试最有效的手段。随着敏捷迭代的速度越来越快,UI 控件的频繁变更会导致控件定位不稳定,提高了用例脚本的维护成本。
3)接口测试:现代软件架构无论是分层还是服务调用模式,对接口的依赖程度都大大增加。比如典型的前后端分离的开发模式,前后端基本都是在围绕着接口进行开发联调。另一方面,与单元测试相比,接口测试调用的业务逻辑更加完整,并且具备清晰的接口定义,适合采用自动化的方式执行。
(2)椭圆形模型
对于基于 Web 的应用来说,更推荐椭圆形模型,也就是以中间层的 API 接口测试为主,以单元测试和 UI 测试为辅。
PS:此篇读完石雪峰老师的DevOps实战笔记所写。
最后
以上就是能干香氛为你收集整理的DevOps笔记-11:自动化测试1、挑战2、适用场景3、面临的问题4、自动化测试的设计的全部内容,希望文章能够帮你解决DevOps笔记-11:自动化测试1、挑战2、适用场景3、面临的问题4、自动化测试的设计所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复