当前位置: 首页 > news >正文

在阿里干了6年自动化测试,30岁即将退休的我,告诉你自动化测试工程师有多吃香...

测试人员需要具备自动化测试或者测试开发能力,已经成为测试行业内容的一种显在趋势,而且这种趋势呈放大态势,其发展前景是十分明朗的。

2022这种疫情期间,就业大环境不是很理想,目前呢,企业倾向于招自动化测试和测试开发的人,如果你学自动化测试或者测试开发的话,那么找工作对你来说,应该不是什么难事,而且这两个岗位薪资待遇也不低。但是如果你只是学了功能测试,只去找功能测试的工作,那么应该不是那么好找,毕竟现在已经被边缘化了。所以现在很多培训机构都是会教自动化的,才能提高学员的就业率

 

看了上年这两张图,你就知道自动化测试工程师和测试开发工程师有多吃香了,那我们接下来讲讲自动化测试是什么并且告诉你自动化测试怎么学习?


一、在学习自动化之前,我们需要明确自动化测试是什么?

自动化测试是把以人为驱动的测试行为转化为机器执行的一种过程。通常,在设计了测试用例并通过评审之后,由测试人员根据测试用例中描述的规程一步步执行测试,得到实际结果与期望结果的比较。

自动化测试的主要目标是提高测试效率,降低项目成本,而不是完全取消手工测试。

自动化测试的意义?

提升效率,减少重复作:勿容置疑,最大的意义就是提高测试效率,手工测试的最大问题在于,面对快速迭代,无法快速完整的执行冒烟用例。节省人力成本:执行测试脚本可以实现无人值守,不限时间的测试。从而让测试人员可以做更多有意义事情,比如探索性测试等。保证每次测试的完整性和一致性。发现更多隐藏问题:手工测试无法验证系统的稳定性、可靠性等,需要通过工具等自动化手段,对系统进行压力测试、稳定性测试等。如何选择自动化测试的方向?

测试金字塔

测试金字塔自上而下依次是UI测试、接口测试、单元测试。越到高层影响的范围越大,需要的成本越高。

在《google 测试之道》一书,对于google产品,70%的投入为单元测试,20%为集成、接口测试,10% 为UI层的自动化测试。

越底层的自动化测试效率越高,价值越高。

测试金字塔中我们可以了解到,从下到上每个阶段对应的测试内容:

单元测试,就是代码测试阶段。接口测试:可以进行的测试工作有接口测试、接口性能测试等。UI阶段:业务功能测试、界面显示等测试。对应上面的测试内容,自动化测试的学习方向或者切入点一般有以下几类:

UI自动化测试接口自动化测试代码测试(单元测试)性能测试其它专项测试综合以上能力进阶为测试开发工程师。

所以如何从功能测试到自动化测试,达到技术提升的目的,是很多初级软件测试人必经的一个阶段。作为一个有过这样经历的人,对自学过程中的困难深有体会。所以我热衷于收集整理资源,记录踩坑到爬坑的过程。希望能把自己所学,实际工作中使用的技术、自学方法、心得及踩过的一些坑,记录下来

并且希望想自学的你一样,通过我的分享可以少走一些弯路,可以形成一条自己的体系,并应用到实际中。当然,也真心的希望你们升职加薪,或许这才是最实际的吧。

二、自动化测试方向该如何走(学习路径)?

再讲自动化测试学习路径之前,先看常见自动化测试有哪些常见分类?

软件测试领域的自动化测试的概念往往很宽泛,在实际的应用中,自动化可以根据项目的进度及项目类型要求往往可以划分的更加细致一些,并且每种类型的自动化测试侧重点也不一致,如下截图:

接口测试做什么?

接口自动化测试,是当前自动化测试中的首选,任何一个被测软件系统一般都是前后端分离的,前后端通讯都需要接口,测试接口主要目的就是测试后台提供服务是否正常,故而接口的测试自动化测试中最基本的;如果要学习自动化测试,建议从接口测试开始学习。

web测试做什么?

web自动化测试,也是自动化测试领域的重点。对于有页面类的项目,几乎都可以进行web自动化的测试。主要通过模拟人操作对应系统,验证功能等方面是否正常,能大大提升测试效率,主要应用在一些重复操作的测试中。

移动自动化测试做什么?

移动自动化主要是针对于移动的系统的测试。该测试需要验证功能、性能、兼容性、易用性等方面,主要通过工具或者代码命令的方式模拟人工操作,验证整个软件系统的过程。目前对于移动端的测试主要在功能方面的测试外,还需要覆盖到非功能方面的测试。

-----------------------------------------

自动化测试,简而言之,就是把以人为驱动的测试行为转化为机器执行的一种过程。所以自动化需要具备一定的代码能力,故而至少学习一门编程语言,主流的有Java和Python,对于初学者来说,Python容易上手学习。

这个过程实现除了语言外,还需要学习Linux和数据库相关知识,因为项目环境的搭建和数据的管理维护都需要具备这方面的技能。

任何一种自动化的应用不外乎两种方式,要么借助于工具实现,要么通过代码实现,不管通过哪种方式实现,都需要学习并会使用一些基本工具的技能。

所以自动化前置(支撑)知识和技能如下所示:

所以,我们的到的学习自动化测试的路径是:linux -> mysql -> python | java -> 基本工具(JIRA/禅道) ->接口自动化测试-> web自动化测试-->移动自动化测

三、自动化配套学习资源

一、自动化测试全套学习路线

【自动化测试学习路线】

不论学习什么东西基础最重要的,基础学好了后面的学起来自然就轻松了

首先从最基本的python基础语法开始到函数和模块以及面对像编程再到自动化测试框架一步一个脚印开始学。

1. 自动化测试必备Python编程内容

2. Web UI 自动化测试基础内容

3. Web UI 自动化测试实战内容

4. APP UI 自动化测试基础内容

5. APP UI 自动化测试实战内容

6. API 接口自动化测试基础内容

7. API 接口自动化测试实战内容 

8. CI/CD持续集成专项技术

9. 自动化测试框架实战技术

 

 二、自动化测试学习视频

三、 Python入门基础必备学习资料

 

 

四、常用抓包工具教程

在这里插入图片描述

五、面试资料

我们学习软件测试必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。
在这里插入图片描述
在这里插入图片描述

上面是我整理的配套资源,这些资源对于软件测试的的朋友来说应该是最全面最完整的备战仓库,为了更好地整理每个模块,我也参考了很多网上的优质博文和项目,力求不漏掉每一个知识点,很多朋友靠着这些内容进行复习,拿到了BATJ等大厂的offer,这个仓库也已经帮助了很多的软件测试的学习者,希望也能帮助到你。

相关文章:

  • 3.接口
  • LabVIEW-数据采集
  • Django全家桶
  • 内网渗透 Metasploit(MSF)基础使用
  • 机器学习笔记 - 使用TensorFlow Lite从头创建模型
  • 直流信号隔离采样
  • 锐捷——RIP基础配置
  • 一文搞懂【知识蒸馏】【Knowledge Distillation】算法原理
  • 啃完这些 Spring 知识点,我竟吊打了阿里面试官(附面经 + 笔记)
  • Java集合List接口详解——含源码分析
  • 自动化测试怎么做?python自动化测试断言详细实战代码(看这一篇就够了)
  • 100天精通Python(数据分析篇)——第61天:Pandas.to_datetime函数(处理时间)
  • C#多线程学习总结
  • 网络安全漏洞原理利用与渗透
  • 【DDR3 控制器设计】(4)DDR3 的读操作设计
  • “Material Design”设计规范在 ComponentOne For WinForm 的全新尝试!
  • “大数据应用场景”之隔壁老王(连载四)
  • 10个确保微服务与容器安全的最佳实践
  • ES6之路之模块详解
  • Java 多线程编程之:notify 和 wait 用法
  • java8 Stream Pipelines 浅析
  • Java超时控制的实现
  • Java新版本的开发已正式进入轨道,版本号18.3
  • leetcode-27. Remove Element
  • leetcode386. Lexicographical Numbers
  • Map集合、散列表、红黑树介绍
  • node学习系列之简单文件上传
  • vue的全局变量和全局拦截请求器
  • XForms - 更强大的Form
  • 大主子表关联的性能优化方法
  • 二维平面内的碰撞检测【一】
  • 基于OpenResty的Lua Web框架lor0.0.2预览版发布
  • 聊聊redis的数据结构的应用
  • 目录与文件属性:编写ls
  • 问题之ssh中Host key verification failed的解决
  • ​软考-高级-系统架构设计师教程(清华第2版)【第20章 系统架构设计师论文写作要点(P717~728)-思维导图】​
  • ![CDATA[ ]] 是什么东东
  • #{}和${}的区别?
  • #Ubuntu(修改root信息)
  • (14)目标检测_SSD训练代码基于pytorch搭建代码
  • (Redis使用系列) Springboot 使用redis的List数据结构实现简单的排队功能场景 九
  • (八)光盘的挂载与解挂、挂载CentOS镜像、rpm安装软件详细学习笔记
  • (二)pulsar安装在独立的docker中,python测试
  • (三)Honghu Cloud云架构一定时调度平台
  • (四)【Jmeter】 JMeter的界面布局与组件概述
  • (转) Android中ViewStub组件使用
  • .bat批处理(九):替换带有等号=的字符串的子串
  • .bat批处理(六):替换字符串中匹配的子串
  • .cfg\.dat\.mak(持续补充)
  • .NET 8 中引入新的 IHostedLifecycleService 接口 实现定时任务
  • .Net Core webapi RestFul 统一接口数据返回格式
  • .net core 实现redis分片_基于 Redis 的分布式任务调度框架 earth-frost
  • .NET NPOI导出Excel详解
  • .Net Redis的秒杀Dome和异步执行
  • .NET 设计模式—适配器模式(Adapter Pattern)