近期有许多的小伙伴来咨询, 在当前市场环境下, 如何突破自己的职业瓶颈, 测试开发的方向应该怎么去选择, 那么今天,我们就尝试来分析一波.
一. 软件测试职业规划
软件测试工程师的日常工作: 尽可能早的发现缺陷中隐藏的缺陷并确保其得以修复.
测试人员在职场中需要什么都会, 什么都有接触, 好像是全栈, 但因为获取到的信息太多, 导致三脚猫功夫的测试人员一抓一大把, 在真实测试方向深度、质量管理、质量体系建设、团队测试方案等方面缺少深入的思考与沉淀。
随着IT技术发展,近年来软件测试工程师在物联网、金融业务、终端测试、车载测试、5G、云端等方面的需求越来越多,企业对于人才的需要是测试开发复合型人才,“精通测试懂开发”才是核心竞争力
二. 软件测试后疫情时代的发展
受到疫情影响, 目前各个企业的岗位招聘对于人员技术能力的要求优中择优, 复合型人才的需求更显突出.
很多小伙伴随着疫情的到来开始感觉迷茫,好像自己身处敌营, 危机四伏, 更不知如何突破职业瓶颈, 向那个方向更好的发展.
那么传统的职业发展会有以下几个选择: 技术方向(首选)、做管理
技术方向的突破和提升是现阶段我们每位测试工程师都会面临的问题, 在测试过程中相信每个小伙伴都遇到过几个特别的场景: 如偶发的缺陷; 开发不认可提交的缺陷; 接口测试时看不到页面, 难以着手;开发甩锅无法直接确定引发缺陷的具体原因等.
如果我们能够直接对开发的源码进行白盒测试, 提交缺陷时通过代码调试定位到引发缺陷的具体代码, 做到靠自己不求人, 相信开发同学会对你刮目相看.
那么这样就是测试开发工程师吗? 答案是否定的.
三. 测试开发必备技能点
1)需要具有丰富的测试经验
清晰的了解软件测试人员在实际工作中所面临的痛点和难点, 才能够以开发的技能来提速增效; 对质量管理、质量体系建设等有深度的思考; 能够从企业实际面临的质量问题触发, 有效的结合开发能力提升软件质量
2)熟练使用常用的软件测试工具
如: 性能测试相关的 Jmeter、Loadrunner; 自动化相关的: Selenium、Appium、Airtest; 单元测试常用的框架: TestNG、Pytest; 安全扫描工具: AppScan; 版本控制工具: Svn、Git; 持续集成工具: Jenkins;测试环境管理与项目部署:Linux操作系统 redhat、Centos、Docker容器
3)测试运维能力的掌握:
如DevOps从项目的发布、测试、运维、资源监控、配置优化等
4.具备较好的开发能力,主流的技术栈有:
Java+Maven+SpringMVC
Python+Django/Flask/FastAPI
最后, 只有不断的学习, 突破自我, 勇于尝试自我的短板, 才能提升个人能力; 同时掌握专业知识, 不要有后顾之忧, 我们相信掌握核心技术(精通测试懂开发)才是赖以生存的根本.