目录:导读
- 前言
- 一、Python编程入门到精通
- 二、接口自动化项目实战
- 三、Web自动化项目实战
- 四、App自动化项目实战
- 五、一线大厂简历
- 六、测试开发DevOps体系
- 七、常用自动化测试工具
- 八、JMeter性能测试
- 九、总结(尾部小惊喜)
前言
1、软件测试的正确路线
软件测试基础:
对软件测试整理的测试流程有清晰的概念,了解软件测试到底是做什么的,软件测试的各种专业术语是什么意思,以及多种不同的软件测试类型区分,测试用例的作用、本质以及如何撰写,测试报告、缺陷管理、常见的软件测试工具(selenium|Postman|禅道的认识)等等;
学习侧重点: 掌握软件测试的基础知识是每个测试工程师必备的基础技能。相当于整个测试技术的基石,一定要注重等等。
计算机基础:
主要掌握计算机的系统基础原理(内存信息、运作原理、Linux操作系统命令)、测试的基本理论知识、前端方面的基础知识(HTML+CSS+JavaScript)等。
学习侧重点: 计算机基础知识同样是IT岗位必备的基础技能。这块主要掌握等知识。
Sql数据库:
掌握基本的sql语句的使用方法,以及常见的sql增删改查、聚合函数以及各类条件查询、子查询的命令。同时需要了解Sql数据库在诸如接口和性能测试中扮演的“角色”和意义。
学习侧重点: 学习数据库的目的是为了后续的接口测试、性能测试方面的技能打基础,主要掌握为主。
编程语言学习:
对于软件测试工程师而言,想要在软件测试领域做的不错,就需要。没有编程基础的我们建议选择Python,如果有一定编程语言基础的可以选择Java。
但是Java入门周期和学习难度相对于Python要大一些,但是两者在市面上的应用领域其实差不多,Python在某些领域(人工智能、爬虫和数据分析)要更优于Java语言。所以测试猿大课堂的软件测试课程大纲,就是以Python语言为课标的。
学习侧重点: 的使用方法。Python对整个自动化测试的学习具有非比寻常的意义。可以说学好Python语言基础是整个自动化测试的一个开端。
因为我们后续要学到的APP自动化、Web自动化、接口自动化等等,都要使用到Python和Python的第三方库。很多自动化测试平台的框架和脚本也是基于Python开发的。
接口测试:
学习和掌握接口测试的概念和原理。掌握HTTP/HTTPS协议的原理,学习和掌握Dubbox的接口测试方法和协议接口能力,主要掌握Postman的操作以及使用技巧
学习侧重点: 掌握接口的概念、HTPP/HTTPS等TCP协议和接口的基本使用方法。掌握Postman的使用。
Web自动化测试:
WEB自动化测试指的是对WEB页面进行界面、数据、交互等等相关测试。通过selenium等测试环境实现等。需要学习等等知识点。
学习侧重点: 重点要掌握的使用。注意的搭建。学习的相关知识点。
APP自动化测试:
APP自动化测试,是当前软件测试行业中较为主流的测试技术。我们需要掌握APP测试工具APPium的使用,掌握常见的多系统(Android、IOS、鸿蒙)系统的测试APP方法,移动自动化测试环境的搭建
学习侧重点: 掌握APP测试环境搭建()、的使用方法。
性能测试:
性能测试属于高端测试工程师需要掌握的技术,对技术要求也有一定的门槛。学习性能测试需要掌握等常用的测试工具。学习系统化的测试思维和流程,掌握。
学习侧重点: 性能测试属于自动化测试领域中的高端技术。一般会性能测试的测试工程师在一线城市大概能拿到18-25K左右的薪资。主要掌握。
集成测试:
主要学习和掌握持续集成Jenkins、Git的环境部署,以及对应的系统化分支的学习,掌握Docker容器的部署和应用。
2、不同等级的测试工程师应具备的基本能力
第一个:我们称之为测试员/测试工程师
直白一点说,就是干苦力活的。对标过来就是百度的T3、T4,阿里的P5,腾讯的T1-T2。主要的工作就是需求分析,测试方案,测试策略,测试执行,都是业务测试。
当然你能够掌握某些领域知识,比如你是测无人车的,无人车的业务是什么,我测AI,AI是什么,我去测大数据,大数据是什么,测的是电商,电商系统的架构是什么,业务知识是要懂的。
再一个是带外包团队,可能会有一部分的外包团队交给这一部分人去带。主要是也就是管理这些基础的业务测试工作。
不同等级的测试工程师应具备的基本能力
第二个:测试开发工程师
现在第一个等级是不怎么招了,多数都是从第二个等级开始招。一旦提测试开发,就一定要求你懂研发,懂测试,并且有一定的深入工作的能力。
从这个等级开始要求你的编程能力了,Java、Python、shell、SQL,这是最基础的,然后是业务测试。
这部分人仍然会负责一部分的业务测试的工作。老大会根据你的能力,给你安排一个比例。你能力很强,80%做技术,20%做业务,如果你能力不强,那就80%做业务,20%参与一部分技术。如果你的技术太low了,那就100%的全部做业务测试。
所以这个时候会根据你的能力进行合理的时间划分。这里面的要求就比刚才突然间就拔高了,客户端的UI测试,服务端的接口测试,性能测试,基本上都属于这个范畴。
面试的时候,性能与非功能测试,可能不会做一个主面试点,主要还是在自动化和编程能力。也就是目前大家出去找工作,最容易被卡的一关。
所以在这个等级里面,也是干活的,也就是既做业务测试,也做技术上的改造,以及去写一些自动化,但是仍然是偏重于业务的。
第三个:高级测试开发工程师/测试架构师
那么到这个等级,业务测试已经非常少,甚至完全没有了,这个时候更多的是负责整个团队的流程管理。流程管理体系,白盒测试体系,测试工具与测试平台的开发,再一个是质量监控,还有一个是质量管理。
通常一个团队里面,会有一个测试的管理人员,加上1-2个高级的测试开发工程师,或者叫测试专家也行。他会搭建起整个的持续集成系统。持续集成、白盒测试、以及一些平台的开发,主要会交给这些人负责。
然后他会带2-3个测试开发工程师,这些测试开发工程师一边跟着他去学习,一边去做业务。然后剩下的活儿,交给外包公司或者校招的人去做。
下面是我整理的2023年最全的软件测试工程师学习知识架构体系图 |
一、Python编程入门到精通
二、接口自动化项目实战
三、Web自动化项目实战
四、App自动化项目实战
五、一线大厂简历
六、测试开发DevOps体系
七、常用自动化测试工具
八、JMeter性能测试
九、总结(尾部小惊喜)
在追求梦想的路上,不要畏惧失败,相信自己的能力和才华,跨越困难和挑战,才能成就辉煌的人生。
只有勇于挑战,不断超越自我,才能实现人生的价值和意义,让我们一起努力奋斗,追逐梦想的光辉。
每一次的努力都是为了离梦想更近一步,坚持奋斗,终将收获辉煌,让心中的火焰照亮前行的道路,永不熄灭。