软件测试-学习路线图
初级软件测试工程师:
- 测试基础理论:你要明白一家互联网公司各个岗位是做什么的,主要是前端,后端,产品经理.....以及一个版本迭代从需求分析到上线整个测试流程以及使用的管理工具。要掌握测试用例的编写方法与技巧。
- 功能测试:主要分为app测试,web测试和接口测试。主要就是接口测试,你要学会使用两个工具,一个是postman用来调接口,一个是fiddler用来抓包定位bug。学好接口测试也是为以后的性能压测学习打下基础。
- 数据库:首学mysql,主要掌握sql语句,增删查改,嵌套子查询,多表查询。加分项会存储过程,懂索引,事务,sql优化。这些初级不强求。工作中使用最多的是查询和修改语句,主要校验前端的传值以及不同系统接口调用数据传输,存值是否正确。
- linux:会linux基本命令,比如linux三剑客等,会用命令查日志,会搭建测试环境。因为绝大多数公司服务器以及代码都是部署在linux系统上,工作中用的最多的就是查询日志,定位bug。
- 网络协议:会http/https协议,高频面试题目接口请求的方式get与post区别,cookie与session机制区别,三次挥手四次断开,输入百度网址发生了什么?这些都要了解。
- 版本控制工具:主要就是git和svn,git是命令行式,svn是图形化界面,企业主要用来管理代码以及文档等,属于工具使用,比较简单,最好都会。
- 编程语言:java/python之一,初级对编程语言要求不高,不会也可,但是是加分项,最好掌握一些基础语法,比如学完javase,能手写实现冒泡排序或其它排序,很加分。
- 自动化:主要分为Web自动化,App自动化,接口自动化。初级要求不高,知道一些框架即可,如果学习请优先学习接口自动化,目前需求最多。加分项是会使用搭好的框架编写自动化case,脚本等。
- 性能测试:初级没要求,加分项会使用jmeter做接口压测,并发测试等
中级软件测试工程师:
- 掌握一门编程语言:java/python之一,python对于初学者很友好,比java好入门。java优势在于和开发使用的是相同语言,便于沟通,目前后端开发大部分都是使用java语言。而且学习性能调优时,使用java技术栈的对理解底层JVM很有帮助。大厂使用java比较多,中小公司使用python比较多。当然后期两者都会再好不过。
- 可以根据业务至少搭建一种自动化测试框架:自动化测试主要有接口自动化,web自动化,app自动化三种。推荐大家首先学接口自动化测试框架,因为需求最大,使用的公司最多。原因就在于后端接口比较稳定,变化比较小。前端自动化,ui层变化太大,成本太高。做的公司比较少。
- 性能测试:至少会接口压测,数据库压测,有实际相关经验。可以根据生成的报告分析TPS,并发量,吞吐量,资源利用率等这些关键指标,可以协助开发调优。当然,性能测试水比较深,分析性能瓶颈这些,你如果玩的很溜的话就能发展为架构师了,中级掌握基本的即可。
- 学习一门脚本语言:推荐shell,这个方向作为掌握linux的基本命令的进阶方向再好不过,可以看到很多大厂招聘都有掌握shell优先,很加分。
- 至少熟悉一个行业的业务知识:很多时候测试场景漏测导致线上问题,并不是因为你没掌握好测试用例的设计方法,根本原因是你对你测试的这个产品还不够完全熟悉,对业务理解还不够透彻。深入掌握一个行业的业务知识对你迁移到另一个行业也很有帮助,可以更快上手,可以是电商,保险等行业均可。不推荐游戏,嵌入式等硬件小众行业......
- 可以独挡一面:这意味着你不再像初级测试一样,发现bug问题首先甩锅给开发,而是自己可以首先分析问题,定位问题原因。也意味着你可以独立负责并主导一个完整项目的测试。总之,独立思考能力是很稀缺的。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具