随着科技的发展,软件测试领域对人才的要求越来越高,特别测试开发岗位已成行业热点关注对象。
做开发的同学也对测试开发岗位感到好奇,为什么做测试还要写代码做开发?
他们都在开发些什么软件?到底做软件开发好还是测试开发好?这些问题一直困惑着大家。
为什么测试开发工资那么高?很多岗位甚至高于前端、后端初中级岗位薪资。厉害的测试开发岗位年薪都能拿到上100W。
特别是BAT企业,基本功能测试工作都外包了,专程招聘测试开发岗,从而培养高端测试技术+管理技能,节约企业内部资源。
胜任测试开发岗位需要具备哪些条件?
市场上太多人把自动化测试理解成测试开发,这是对具体岗位角色定位不明确产生的误解。
1
一、会自动化测试就一定会测试开发? 答案:不一定, 自动化测试分:接口自动化与UI自动化。
企业中接口自动化分三种:
1.1 ) 通过编写自动化测试框架来完成工作。
接口自动化测试框架用:Python+requests库编写接口自动化代码设计框架完成自动化测试。
1.2) 使用第三方工具来完成接口自动化。
例如:JMeter|Postman|soapui,下面以JMeter为例。
第三方工具生成的接口自动化测试报告
上述内容是自动化测试人员必备的能力。自动化测试需用工具+编程语言完成测试,不需具备开发测试产品的能力。
1.3 ) 通过自研自动化测试平台完成接口自动化测试工作。
1.3.1 接口测试用例
1.3.2 接口自动化
1.3.3 接口自动化测试报告
通过开发自研测试平台线上化接口测试成果是测试开发工程师具备的能力。测试开发需要测试人员不仅具备自动化测试能力,还需具备测试开发能力。
2.1 UI测试工具:Selenium+Python;
2.2 UI自动化测试代码;
2.3 UI自动化测试报告
2.4 UI自动化测试平台
二、会测试开发就一定会自动化测试?
答案:一定会,学习自动化测试是为测试开发打基础的阶段。
成为一名合格的测试开发,需要具备以下六个条件:
1)产品设计能力
测试开发工作:研发测试工具或测试平台,为测试团队提供服务。
开发啥样的工具?运用你10多年的测试经验积累的产品思维设计能力,基于测试部门产品线需求分析,提炼测试产品线需求梳理成测试平台或者工具需求。
最终基于梳理的需求设计测试平台或者工具,为测试开发工作做准备。
2)测试能力
测试开发岗位的工作一定对软件测试流程、业务、产品线非常熟悉,为测试部门提供业务服务。
测试源于业务,又服务于部门产品线。
3)开发能力
测试开发一定要具备开发能力。
开发分:前端开发与后端开发。前端开发必备技能:html|css|js|ajax|jquery|node|vue|git
后端开发必备技能:Java或Python等,我以Java开发语言为主。
测试开发必备技能: 至少掌握一门编程语言(Java或Python),掌握常见的测试工具(Selenium|Appium|pytest|requests|unittest)
4)运维技能
测试平台或者产品开发完成后,需要将产品部署到Linux环境中去使用。
掌握Linux环境部署与搭建是重中之重。
5)系统培训能力
测试平台或者测试工具开发完成后,产品不会用,测试开发人员组织相关部门参与培训学习使用测试平台和测试工具。
在应用过程中不断挖掘问题,根据测试产品线需求不断迭代优化测试产品,让产品快速适应当前的业务线,为业务线提能增效。
专业方向的选择,因为每个人的兴趣和适应能力不同。
以下是一些关于软件开发和测试开发的一些优势和劣势,您可以根据自己的兴趣和技能来做出决定。
软件开发(Software Development)优势:
1. 有机会创造新的应用和解决方案。
2. 可以设计和构建复杂的软件系统。
3. 有机会参与整个开发周期,从需求分析到设计和实施。
4. 与其他开发人员合作,提高技术能力和学习新的编程语言和工具。
软件开发(Software Development)劣势:
1. 需要有很好的逻辑思维和编程技能。
2. 有时需要长时间面对电脑屏幕。
3. 压力大,需要在短时间内完成任务。
4. 需要不断学习和跟进新的技术和工具。
测试开发(Test Development)优势:
1. 可以验证和确保软件的质量和稳定性。
2. 可以发现并解决软件中的问题和漏洞。
3. 可以提供反馈和改进建议,并与开发人员共同合作。
4. 可以学习和应用各种测试方法和工具。
测试开发(Test Development)劣势:
1. 需要对软件开发过程和测试理论有一定的了解。
2. 有时需要重复和繁琐的测试工作。
3. 需要有耐心和细致的态度,以便发现细微的问题。
4. 需要不断学习和了解新的测试技术和工具。
总之,选择软件开发还是测试开发取决于个人的兴趣、技能和适应能力。
有些人可能更喜欢创造和构建新的软件系统,而有些人可能更喜欢测试和确保软件质量。
重要的是找到自己真正感兴趣并擅长的领域,并不断提升自己的技能。