自动化测试成熟度模型

news2024/12/23 10:07:37

目录

前言:

重新认识自动化测试

新手落地自动化测试

自动化测试成熟度模型

初级阶段-测试半自动化

中级阶段-回归测试自动化

高级阶段-大范围自动化测试

成熟阶段-自动化测试流水线


前言:

随着软件行业的快速发展,软件质量已经成为各个软件企业关注的重点,而自动化测试技术已经成为保障软件质量的一个重要手段和解决方案,其在软件开发和维护过程中起到了极其重要的作用。自动化测试的实施对于企业管理水平、人员技术能力、组织与管理结构以及软件开发流程等方面的要求也越来越高。在这个背景下,不同企业需要有不同的自动化测试成熟度模型来指导自己的自动化测试实践。

重新认识自动化测试

我从事软件测试工作以来,第一次知道自动化是 15 年年底,听大佬说 QTP 可以录制脚本然后自动化回放,测试效率很高,当时心向往之。不过当时技术比较菜,而且对工作也比较迷茫,听过就忘记了。

大概 16 年时候,测试圈子自动化测试开始火爆了起来,当时基于 selenium 的 UI 自动化测试特别火爆。圈子里讨论,培训班推广,很多关于基于 selenium 的 UI 自动化测试的技术文章和书籍开始不断涌现。

我本人是 17 年年初才开始学习自动化测试并且尝试在工作中应用的,确实在回归测试和造数据方面,给了我很多的帮助,当然由于比较早吃螃蟹,在后面跳槽找工作时候,涨薪幅度也挺大。

大概 18/19 年时候,各种自动化测试平台开始在各技术大会、技术沙龙以及技术社区被大家讨论了起来。几个大厂的测试平台之类的最佳实践也开始被大家模仿借鉴学习,这一点大厂做的还是很好的,最起码指引了部分迷茫同学的技术提升和职场发展方向。

差不多 20 年底 21 年时候,我已经是个测试圈子的老鸟了,开始带团队,负责部分招聘和技术面试工作,也会帮业务线的测试同学交叉面试一些候选人。我发现自动化测试已经成了业务测试同学的面试必问技能。前几年大家觉得功能测试最多只负责功能+接口,自动化测试需要有专门的岗位,而近几年,自动化测试成了业务测试的必备技能。我个人认为原因有如下几点:

  1. 软件工程理念在实际工作中的不断深入;

  2. 业务迭代加速以及系统架构不断复杂化倒逼测试提升效率;

  3. 自动化测试工具/框架/技术实践不断丰富成熟以及求职市场的整体水平提升;

其实自动化测试的理念很早就被提出来了,国外也有很多的实践,国内相对较慢,但近几年测试圈子整体的基础技术建设也在快速发展。在我现在的认知里,自动化测试的能力可以算是测试团队的基础技术建设了。

因此,我的建议是,无论是刚入行的萌新,还是之前一直做功能测试的同学,为了更好的职场发展和增强竞争力,具备做自动化测试的技术能力也需要快速提升起来。

新手落地自动化测试

在讨论新手从零到一落地接口自动化测试之前,我想先抛出我的几点建议:

  • 从零开始,不要直接去学习所谓的自动化框架;

  • 学习框架之前,很有必要学习网络协议和编码知识;

为什么这么说?新手一般技术基础不太扎实,且没有太多编码实践,直接学习框架特别容易一步一个坑。

从零开始学习落地接口自动化或者其他自动化测试,我更建议从易到难的去落地实践,这样一方面可以在日常工作中优先保证工作的完成,提升工作效率;另一方面就像打怪升级一样,从易到难去学习提升自己,并不断优化自动化测试在工作中的实践。从易到难落地接口自动化测试,大概可以遵循如下几个步骤:

  • 学会用工具进行接口测试(如 jmeter/postman);

  • 学会用持续集成工具(如 jenkins)将接口测试脚本批量执行;

  • 学会诸如 git/gitlab 等版本和源代码管理的工具,便于团队多人协作;

  • 学习一门编程语言,利用自动化测试框架将工具脚本转化为代码脚本;

  • 学习将公共部分封装,优化代码结构,提高写代码脚本的效率,降低维护成本;

  • 学习数据参数化管理的方法,可以从 Excel——配置文件——数据库——造数工厂这个方向迭代;

  • 尝试按照业务线和测试场景区分脚本集合,然后引入 mock,降低服务间的调用依赖,提高执行效率;

  • 开始画大饼,造轮子,搞 KPI,开发自动化测试平台;

自动化测试成熟度模型

本文第二部分的内容来源于我前几天写的文章:《从零到一落地接口自动化测试》,这里以从零到一落地自动化测试的几个步骤,来谈谈自动化测试的成熟度模型。

初级阶段-测试半自动化

先利用工具将日常费时的手工测试部分转化为半自动化(如 postman/jmeter/jenkins),不要考虑什么框架或者 CICD 等高大上的东西,先解决部分效率问题,才能有时间和资源投入后续的建设。当然这个阶段更适用于初创企业或者小型公司的测试同学。

中级阶段-回归测试自动化

有了前期的部分建设,接下来可以将日常的提测冒烟测试、系统测试阶段的主流程回归测试以及部分造测试数据的过程转化为自动化。这个过程中一方面需要培养提升建设团队同学的技术能力,另一方面为自动化测试的大范围落地做铺垫(毕竟很多公司自动化测试看不到短期效益就变成了纯粹的 KPI 然后不了了之)。

注意:上面我说的都是测试自动化,并不是自动化测试。测试自动化指的是先将日常手工测试比较费时且重复度较高的部分转化为利用工具执行,这样做是为了提高效率,解放人力资源,也是为了打好基础,顺带让领导知道,做这些事对团队有长期价值的。

高级阶段-大范围自动化测试

到了高级阶段,我个人认为就可以开展大范围的自动化测试了。这里的大范围并不是说完全不需要手工测试,而是按照自动化测试的纺锥模型(不是金字塔模型),按照 UI-10%/API-70%/UNIT-20%的占比去不断建设和落地。

当然,这个阶段可以开始尝试测试左移的实践,测试同学去做更多具有创造性和探索性的工作,比如:

  1. 花更多时间在需求阶段,包括需求分析和需求评审,做好需求阶段的质量卡点;

  2. 设计更高效的自动化测试流程框架,提升测试用例的有效覆盖率(正交实验法);

  3. 推动研发同学实践单元测试,测试同学提供 case 并评审验证,研发同学负责落地;

  4. 建设质量度量相关的事情(为了解决问题验证效果而度量,并非为了度量指标而魔改自动化);

成熟阶段-自动化测试流水线

有了前面三个阶段的技术建设和用例沉淀以及不同团队间的协同配合,这个阶段可以考虑将自动化测试融入到企业的自动化交付流水线中。大致思路如下图:

 作为一位过来人也是希望大家少走一些弯路,希望能对你带来帮助。(WEB自动化测试、app自动化测试、接口自动化测试、持续集成、自动化测试开发、大厂面试真题、简历模板等等),相信能使你更好的进步! 

留【自动化测试】即可【自动化测试交流】:574737577(备注ccc)icon-default.png?t=N5F7http://qm.qq.com/cgi-bin/qm/qr?_wv=1027&k=khh1u309hOPfmutO7szune5BMv7p8BHg&authKey=kRBNmDukZpv512fdc7h2hFwQvgQFubVtbuOOFlKwsRVnal%2FcYaEiQOlTEDIi5Nd5&noverify=0&group_code=574737577

 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/653108.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

chatgpt赋能python:Python如何绘制坐标轴

Python如何绘制坐标轴 在数据可视化中,坐标轴是一种非常常见的图形元素,其作用是让人们更好地理解和分析数据。在Python编程中,我们可以使用各种数据可视化库如Matplotlib和Seaborn来绘制坐标轴。本文将介绍如何使用Matplotlib库来绘制坐标轴…

17. 数据结构之图

前言 前面介绍了队列,栈等线性数据结构,二叉树,AVL树等非线性数据结构,本节,我们介绍一种新的非线性数据结构:图。图这种结构有很广泛的应用,比如社交网络,电子地图,多对…

【JVM篇】Java内存区域与OOM

目录 1、概述 2、运行时数据区域 3、程序计数器 4、Java虚拟机栈 5、本地方法栈 6、Java堆 7、方法区 8、运行时常量池 9、直接内存 1、概述 内存是非常重要的系统资源,是硬盘和 CPU 的中间仓库及桥梁,承载着操作系统和应用程序的实时运行。JVM…

Windows Server 2025预览版安装配置

一、安装篇 1.2.目前最新版是 25379版本,需要注册微软账户,加入先期预览计划才可以下载。 下载完镜像后,制作U盘启动盘,安装。 注意:无论是rufs制作启动盘,还是在安装的时候,都要使用UEFI模式…

Spring boot开发微信小游戏后台-websocket服务

最近在做一个微信小游戏的后台,需要使用websocket与小游戏端建立连接,实时推送数据,小游戏后台是一个单体spring boot项目,管理玩家的一些基础信息和游戏配置信息,起初在这个单体项目中加入了websocket,可以…

spring boot+easyui粮油质量管控防伪溯源系统源码

基于物联网技术、RFID技术和RSA、PGP加密算法开发的粮油质量追溯系统 粮油安全关系千千万万消费者的健康问题。近年来,许多食品行业安全事故频频涌现,成为社会关注焦点。粮油生产加工质量管控防伪溯源系统为粮油提供从种植、生产、加工、销售等各环节的…

Linux下实现自己的printf函数

Linux下实现自己的printf函数 文章目录 Linux下实现自己的printf函数项目中的使用实现自己的printf函数 项目中的使用 /*********************************************************************** 函数名称: DebugPrint* 功能描述: 打印信息的总入口函…

Nodejs四、npm与包

零、文章目录 Nodejs四、npm与包 1、包 (1)包是什么 Node.js 中的第三方模块又叫做包。就像电脑和计算机指的是相同的东西,第三方模块和包指的是同一个概念,只不过叫法不同。 (2)包的来源 不同于 Nod…

Linux SSH PublicKey 登录

前言 ssh 远程登录密码认证的方式有 Password、Keyboard Interactive 和 Public Key 三种主要方式。 前面两种方式就是密码认证,含义都是一样大同小异。第三种是登录方式最安全的一种,也是我们常用的云服务器默认使用的一种方式。 本文就如何配置并使用…

torchvision.ops.nms实现NMS

nms原理&#xff1a; 当目标检测模型对一个目标有多个检测框时&#xff0c;需要滤掉多余的框&#xff0c;留下最接近真实目标的框。 步骤是这样的&#xff1a; 1.先把目标框初筛一波&#xff0c;比如设阈值为0.25, 把预测概率 < 0.25的目标框滤掉。 2.把 每个类别的 目标框 …

DEVONthink 3:Mac文档管理工具,知识管理app

DEVONthink Pro是一款功能强大的文档管理软件&#xff0c;它可以帮助用户高效地组织、管理和查找各种类型的文件和信息。 下面是DEVONthink Pro的主要特点介绍&#xff1a; 多功能性&#xff1a;DEVONthink Pro支持多种文件类型和数据源&#xff0c;并提供全面的搜索、分类、过…

在 ZBrush、Substance 3D Painter 和 UE5 中创作警探角色(P1)

小伙伴们大家好&#xff0c;今天瑞云渲染小编给大家分享的是自由CG艺术家Jean Zoudi创建《极乐迪斯科》的警探角色的项目花絮&#xff0c;会解释身体和服装的建模方式&#xff0c;分享角色发型和面部毛发背后的工作流程&#xff0c;也会详细介绍渲染过程。 介绍 大家好&#…

性能测试怎么做?性能测试策略配套适用场景,打通性能测试...

目录&#xff1a;导读 前言一、Python编程入门到精通二、接口自动化项目实战三、Web自动化项目实战四、App自动化项目实战五、一线大厂简历六、测试开发DevOps体系七、常用自动化测试工具八、JMeter性能测试九、总结&#xff08;尾部小惊喜&#xff09; 前言 1、常见的测试策略…

直流对数放大器

Logarithmic Amplifiers 对数放大器的应用场合 在雷达和一些其他测距的场合&#xff0c;sensor输出的信号的动态范围比较宽&#xff0c;也就是要求sensor输出的弱信号时有比较大的放大倍数&#xff0c;强的信号有较小的放大倍数&#xff0c;以保证sensor输出的信号经过放大器后…

可移动硬盘无媒体是什么意思?移动硬盘显示无媒体数据如何恢复

案例分享&#xff1a;【最近我遇到了一个麻烦&#xff0c;我的移动硬盘突然显示“无媒体”。我不知道发生了什么&#xff0c;我很担心我的硬盘中存储的大量重要数据是否还能恢复。我该怎么解决移动硬盘显示无媒体问题呢&#xff0c;求大神帮帮我吧&#xff01;&#xff01;&…

浏览器是如何实现生成HTTP消息的

我们经常会使用浏览器访问各种网站&#xff0c;获取各种信息&#xff0c;帮助解决工作生活中的问题。那你知道&#xff0c;浏览器是怎么帮助我们实现对web服务器的访问&#xff0c;并返回给我们想要的信息吗&#xff1f; 1. 浏览器生成HTTP消息 我们平时使用的浏览器有很多种&…

【强烈推荐】 十多款2023年必备国内外王炸级AI工具 (免费 精品 好用) 让你秒变神一样的装逼佬感受10倍生产力 (6) AI学习

&#x1f680; 个人主页 极客小俊 ✍&#x1f3fb; 作者简介&#xff1a;web开发者、设计师、技术分享博主 &#x1f40b; 希望大家多多支持一下, 我们一起进步&#xff01;&#x1f604; &#x1f3c5; 如果文章对你有帮助的话&#xff0c;欢迎评论 &#x1f4ac;点赞&#x1…

【LLMs系列】90%chatgpt性能的小羊驼Vicuna模型学习与实战

一、前言 UC伯克利学者联手CMU、斯坦福等&#xff0c;再次推出一个全新模型70亿/130亿参数的Vicuna&#xff0c;俗称「小羊驼」&#xff08;骆马&#xff09;。小羊驼号称能达到GPT-4的90%性能 github 地址: GitHub - lm-sys/FastChat: An open platform for training, servi…

ChatGPT爆火网络背后的故事?

文章目录 前言一、ChatGPT的诞生背景二、ChatGPT的技术原理三、ChatGPT的推广策略四、ChatGPT的未来展望五、橙子送书第2期 前言 ChatGPT是一款基于人工智能技术的聊天机器人&#xff0c;它的出现引起了广泛的关注和热议。在短短的时间内&#xff0c;ChatGPT就成为了全球范围内…

实测|飞凌嵌入式OK3588-C开发板4G模组的使用与测试

本篇试用报告由发烧友 ouxiaolong提供&#xff0c;感谢ouxiaolong的支持。飞凌嵌入式会持续开展开发板有奖试用活动&#xff0c;更有京东E卡等着你&#xff01;欢迎大家的持续关注。 飞凌嵌入式OK3588-C开发板是一款性能强劲的旗舰产品&#xff0c;采用核心板底板的分体式设计…