10年测试老鸟,自动化测试经验10条建议,一路狂飙...

目录:导读

    • 前言
    • 一、Python编程入门到精通
    • 二、接口自动化项目实战
    • 三、Web自动化项目实战
    • 四、App自动化项目实战
    • 五、一线大厂简历
    • 六、测试开发DevOps体系
    • 七、常用自动化测试工具
    • 八、JMeter性能测试
    • 九、总结(尾部小惊喜)


前言

1、哪一刻,让你想起了自动化?

一名大厂测开,编写自动化脚本,已然成为一种必备的技能。

但是,什么情况下使用自动化,使用自动化的前提条件,却不是很多人都熟知。

这就好比,拿到驾照会开车的人很多,但车子何时需要做养护,每个阶段养护内容是什么,应该不是所有驾驶员都知道。

彻底搞懂自动化的来龙去脉,自动化的场景及成本维护等…尤为重要

1)执行回归测试

问:在日常测试工作中,由于新追加的需求(不允许怼产品经理)或者修复BUG,如何确定是否因其而引起新的BUG?

答:我们常用做法,就是 回归测试。

问:那么在每次修复bug或新增需求时,都需要手动去回归吗?在没有更多的成本、资源、时间时,依旧需要手动验证、执行,但其成效是否能达到要求呢?

答:我想我们应该大声喊出来,我需要自动化,这样我可以有更多的时间去做更重要的事情。

在日常测试工作中,有大量的回归测试需要我们把它们给自动化了。

2)压测场景执行并发

问:某日老板对你说:对我们的拼单功能进行压测下,看看结果啥样?
通常情况下,我们不能喊几百号人,一起拼个单。

这个也不太现实。
答:我要遵循我内心的指引,我需要自动化,这样让我非常省事。

3)UI稳定,接口不断升级

问:当前阶段UI已经不再大幅变更,而后端服务接口在不停的升级,你还需要手动的去验证吗?

项目前期,UI频繁变更,接口却稳定,你也需要对接口进行验证码?

答:你要勇敢的说出,我需要自动化,我需要WebUI自动化,我需要接口自动化。

在不同的技术层级,我们可以根据其更新频度等情况,将其自动化,以达到改进效率和提升质量的效果。

2、七问:是否了解自动化风险

俗话说,任何事情都有两面性,引入自动化的好处那么多,当然,成本及风险也会随之而来。

引起自动化测试的风险及成本有哪些~

1)团队成员的资历

想想你的团队,对于自动化测试是否有足够的编程开发知识和能力?
如果没有,他们是否具备一定的基础,可以快速的掌握相应的技术?

2)自动化成本投入产出比

不可否认的是,手工测试的成本也是很高的,尤其是对于高素质的手工测试人才,如果你认为自动化测试能解决手工测试的成本问题,那么,你要三思啊。

自动化测试的成本体现在以下几个方面:

自动化工具的采购
如果足够牛X,自己设计框架。
人才的引入或培训
薪资给到位,干啥都来劲!
自动化测试脚本的维护
没有设计框架的能力,还不做维护脚本的事情?
自动化测试的实施推广
能不能推得动,沟(yan)通(zhi)很重要.

3)慎重对待UI级自动化

在进行UI级自动化测试前要谨慎选择业务场景,尤其是要注意规避可能的大面积发生UI更新的场景,否则自动化脚本的维护成本会非常的高。

所以UI级自动化测试,通过做以下几点:

最核心的业务流程
或最典型用户业务场景
或重点关注的功能模块

4)自动化测试介入阶段

不需要等到系统足够稳定,才介入到自动化测试。

接口自动化:接口开发完成,联调测试前,可介入;
UI自动化:UI级不频繁变更,功能基本实现,可介入;
性能自动化:功能稳定,可介入。

前提是团队拥有足够强的技术功底,能从源码级或数据层级就开始规划、设计自动化测试解决方案。

5)自动化复归率

问:是否需要100% 的执行自动化测试?
答:理想很丰满,现实很残忍。

接口、UI级别:别想了,你要是都实现了,点点点的作用如何发挥?
性能、压力等领域:有机会实现100%。

6)系统使用期限

如果是一次性的系统,完全没必要;
如果是长期维护产品,完全有必要。

7)自动化框架成熟度

如果选择的自动化场景生命周期不够长,那么请放开它;

构建自动化的基本准则:让已经自动化的工作比手工执行成本要明显降低。

如果能将实现自动化测试工作做到日常化、版本化,那么其成本降低将是明显的、效率改进也是显著的、是可以获得良好的投资回报率的。

下面是我整理的2023年最全的软件测试工程师学习知识架构体系图

一、Python编程入门到精通

请添加图片描述

二、接口自动化项目实战

请添加图片描述

三、Web自动化项目实战

请添加图片描述

四、App自动化项目实战

请添加图片描述

五、一线大厂简历

请添加图片描述

六、测试开发DevOps体系

请添加图片描述

七、常用自动化测试工具

请添加图片描述

八、JMeter性能测试

请添加图片描述

九、总结(尾部小惊喜)

成功的路上不会一帆风顺,你可能会遇到很多挫折和困难。但是请相信,只要你不放弃,就一定能够迎来光明的未来。

每个人都有他的优点和特长,你也不例外。所以,请放下自卑感,充分发挥自己的优势,在这个世界上留下独特的足迹。

人生就像一条河,有时候会平静如镜,有时候又波涛汹涌。我们要学会适应各种环境,始终保持积极的心态,面对一切挑战。

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

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

相关文章

Postman如何使用(二):Postman Collection的创建/使用/导出分享等

一、什么是Postman Collection? Postman Collection是可让您将各个请求分组在一起。 您可以将这些请求组织到文件夹中。中文经常将collection翻译成收藏夹。如果再下文中看到这样的翻译不要觉得意外。Postman Collection会使你的工作效率更上一层楼。Postman Colle…

教师工作就业前景

在这个知识爆炸的时代,当老师无疑是社会发展的重要基石。随着科技的进步和社会的发展,教育行业的需求也在不断增长。那么,教师工作的就业前景如何呢? 我们来看看教师工作的市场需求。随着国家对教育的重视和投入的增加&#xff0c…

C/C++ 实现Socket交互式服务端

在 Windows 操作系统中,原生提供了强大的网络编程支持,允许开发者使用 Socket API 进行网络通信,通过 Socket API,开发者可以创建、连接、发送和接收数据,实现网络通信。本文将深入探讨如何通过调用原生网络 API 实现同…

「Java开发中文指南」IntelliJ IDEA插件安装(一)

IntelliJ IDEA是java编程语言开发的集成环境。IntelliJ在业界被公认为最好的Java开发工具,尤其在智能代码助手、代码自动提示、重构、JavaEE支持、各类版本工具(git、svn等)、JUnit、CVS整合、代码分析、 创新的GUI设计等方面的功能是非常强大的。 插件扩展了Intel…

【分布式】分布式中的时钟

一、物理时钟 vs 逻辑时钟 时钟的存在主要是为了标识事件的发生顺序。 分布式系统不使用物理时钟记录事件,分布式系统中每个节点记录的时间并不一样,即使设置了 NTP 时间同步节点间也存在毫秒级别的偏差 所以需要有另外的方法记录事件顺序关系&#x…

vue2中使用echarts

1,安装echarts npm install --save echarts 2&#xff0c;具体页面 <template><div class"app-container"><div class"aa" id"main" style"width: 500px; height: 400px;"></div></div> </te…

PDF 批量处理软件BatchOutput PDF mac中文版介绍

BatchOutput PDF mac是一款适用于 Mac 的 PDF 批量处理软件。它可以帮助用户将多个 PDF 文件进行异步处理&#xff0c;提高工作效率。 BatchOutput PDF 可以自动化执行许多任务&#xff0c;包括 PDF 文件的打印、转换、分割、压缩、加密、重命名等&#xff0c;而且它还可以将自…

Elasticsearch知识

目录 Elasticsearch逻辑设计和物理设计 逻辑设计物理设计Elasticsearch原理 倒排索引文档的分析过程保存文档搜索文档写数据的底层原理 数据刷新&#xff08;fresh&#xff09;事务日志的写入ES在大数据量下的性能优化 文件系统缓存优化数据预热文档&#xff08;Document&…

【数据分享】2023年我国省市县三级的瞪羚企业数量(免费获取/Excel/Shp格式)

企业是经济活动的参与主体。一个城市的企业数量决定了这个城市的经济发展水平&#xff01;比如一个城市的金融企业较多&#xff0c;那这个城市的金融产业肯定比较发达&#xff1b;一个城市的制造业企业较多&#xff0c;那这个城市的制造业肯定比较发达。 之前我们给大家分享了…

《opencv实用探索·二》根据RGB的像素排列来理解图像深度、像素深度和位深度

通常对于RGB图像主要分为RGB16&#xff0c;RGB24和RGB32。RGB16从高位到低位的排列为R->G->B&#xff0c;RGB24和RGB32从高位到低位的排列为B->G->R。 RGB16: 16 位为一个存储单元&#xff08;一个像素&#xff09;&#xff0c;来存储一个RGB像素;因为人眼对绿色比…

社区物联网云服务架构设计

文章目录 1 摘要2 架构图2.1 社区物联网云服务网络拓扑图2.2 社区物联网云服务通讯流程图2.3 社区远程开锁功能流程图 3 应用场景 1 摘要 随着社区管理越来越智能化&#xff0c;社区物联网升级与改造的市场空间也越来越大。社区物联网包含楼宇对讲、门禁门锁、通道闸等等设备系…

Netty 模型理解

参考文章 1 参考文章 2 官网API文档 Reactor模型 Netty模型 Netty主要基于主从Reactor多线程模型进行了一定的修改&#xff0c;该模型包括以下几个组件&#xff1a; MainReactor&#xff08;主Reactor&#xff09;&#xff1a;负责处理客户端的连接请求。它监听服务器上的端口…

中电金信:守【政】创新,探路保险数字化转型“新范式”

11月23日&#xff0c;CIIP2023中国保险科技创新合作大会在京举办。大会汇集保险科技领域行业专家、学者、国内外头部险企及保险科技公司负责人等各界人士&#xff0c;立足保险行业高质量发展和创新驱动理念&#xff0c;寻找行业数字化转型新动能、新视角&#xff0c;为保险科技…

python中range函数的用法

range() 是Python的一个内置函数。语法格式为&#xff1a;range(start, stop, step) start是初始值&#xff0c;stop是最终值&#xff0c;step是步长。range()函数仅适用于整数&#xff0c;所有参数都必须是整数。步长值可以为正数或负数&#xff0c;不得为零。使用range函数时…

如何去掉图片水印不伤原图?无痕去水印教程分享!

如何去掉图片水印不伤原图&#xff1f;在电商广告设计和营销领域&#xff0c;水印已经成为一种常见的版权保护手段。不过&#xff0c;水印也给淘宝商家带来了一些困扰。那么如何去掉图片水印还能不伤原图呢&#xff0c;接下来&#xff0c;将分享简单好用的无痕去水印教程&#…

Rust UI开发(二):iced中如何为窗口添加icon图标

注&#xff1a;此文适合于对rust有一些了解的朋友 iced是一个跨平台的GUI库&#xff0c;用于为rust语言程序构建UI界面。 想要了解如何构建简单窗口的可以看本系列的第一篇&#xff1a; Rust UI开发&#xff1a;使用iced构建UI时&#xff0c;如何在界面显示中文字符 本篇是系…

VMware 虚拟机设置静态IP

1.桥接模式&#xff1a;无线网卡虚拟机可以桥接的&#xff0c;Vmware0是虚拟机默认进入的虚拟网络&#xff0c;打开虚拟网络编辑器把Vmware0桥接到具体的无线网卡上&#xff0c;再打开网卡设置选择桥接模式即可。 2、.NAT模式下 &#xff1a;window下VMnet8: IPv4 地址 . . . …

高级IO—select

高级IO—select 文章目录 高级IO—selectIO的概念 五种IO模型阻塞IO非阻塞IO信号驱动IOIO多路转接异步IO I/O多路转接之select IO的概念 通常指数据在内部存储器和外部存储器或其他周边设备之间的输入和输出。输入是系统接收的信号或数据&#xff0c;输出则是从其发送的信号或…

Jmeter接口测试——使用教程(下)

前言 上一篇我给大家讲了jmeter的基本介绍跟参数化和jmeter脚本及jmeter断言&#xff0c;今天让我们继续往下看&#xff0c;学习一下jmeter新的知识点。 一、Jmeter关联 我们知道断言是从返回结果中检查有没有预期的值&#xff0c;现在有一个问题&#xff0c;有一个购买商品…

【学习笔记】GameFramework的非官方实例TowerDefense-GameFramework-Demo的流程

一、从游戏开始到打开一个Menu GameStart.unity GameEntry.Builtin.cs ProcedureComponent.cs GameStart.unity->GameFramework->Builtin->Procedure ProcedureLaunch.cs ProcedureSplash.cs ProcedurePreload.cs ProcedureLoadingScene.cs DataTables/Scene.txt Pro…