现在软件从业者越来越多,测试工程师的职位也几近饱和,想要获得竞争力还是要保持持续学习。基本学习路径可以从功能测试-自动化测试-测试开发工程师的路子来走。
功能测试工程师:
1、软件测试基本概念:
- 学习软件测试的定义、目的、原则以及重要性,了解软件测试在软件开发过程中的作用。
- 掌握软件测试的分类方法,包括按测试阶段(单元测试、集成测试、系统测试、验收测试)、按测试技术(黑盒测试、白盒测试、灰盒测试)等进行分类。
2、基本测试方法与技术:
- 学习并掌握各种测试类型,如功能测试、性能测试、安全测试、兼容性测试、回归测试的概念等。
- 了解测试文档的编写,包括测试计划、测试用例、测试报告等,学会如何有效地编写和管理测试文档。
功能测试虽然不需要对每种测试类型的技能都掌握,但应对性能测试、安全测试等理论知识有所了解。
接口测试工程师:
除了功能测试技能外还应掌握以下技能:
1、计算机基础知识:
- 学习计算机组成原理、操作系统、数据结构、计算机网络等基础知识,了解计算机的基本概念和工作原理。
2、软件工程知识:
- 学习软件工程的基本概念,了解软件开发生命周期(SDLC)的各个阶段,包括需求分析、设计、编码、测试、维护等。
- 熟悉软件开发方法论,如敏捷开发等,理解不同开发模式下的测试策略和实践。
3、具体技能:
- postman/jmeter 接口测试应用至少应学习一种工具的使用
- Fiddler工具使用
- Mysql数据库
- Linux计算机基础
- APP移动端测试知识(小程序、ADB)
- 基本的数据结构和算法
自动化测试工程师:
常见有python自动化和java自动化,此处以python为例。
1、python自动化(应掌握技能):
- python编程语言
- pytest
- 自动化测试框架(Robot Framework/playwright web自动化等至少掌握一种)
- Airtest跨平台自动化
- selenium
- APP自动化
性能测试工程师:
- Jmeter服务端性能测试
- 服务器应用调优
- 中间件性能架构分析调优(数据库、RoketMQ、RabbitMQ、Redis、Nginx、Kafka等都应有了解)
- 全链路性能压测体系构建
- Locust性能测试框架
- APP性能测试
测试开发工程师:
- API测试平台开发
- WEB-UI测试平台开发
- APP-UI测试平台开发
- WebSocket实时通讯接口自动化测试
- 前后端分离WEB开发
- Djnago
- 掌握Git、SVN等版本控制工具
目前我能想到的只有这些,欢迎大家批评指正。