51Testing软件测试论坛
标题:
初、中、高级测试工程师成长指南
[打印本页]
作者:
lsekfe
时间:
2021-2-3 09:46
标题:
初、中、高级测试工程师成长指南
因太多小伙伴询问风风零基础如何转行软件测试、软件测试该学什么、中级和高级测试需要掌握哪些技能之类的问题。
为了让大家系统的了解软件测试,掌握合理、正确的学习方法和目标,风风决定制作一个学习 & 成长列表,你可以根据该列表制定自己不同阶段的学习 & 成长计划。
测试基础
无需多说,必须重点掌握!!!一切技术皆由理论发展而来。
01 学习内容
①职业介绍:IT公司和互联网公司各岗位的工作职责,如开发、测试、产品、设计、项目经理等。
②软件流程:研发模型、研发流程、版本迭代、项目需求、需求文档、测试流程、上线流程等。
③测试设计:测试计划、测试方法、测试用例、测试管理工具。
④BUG:定义、分类、生命周期。
02 学习程度
初级-能够理解并说出这些概念,能自己组织语言讲懂给一个不是测试行业的人。
中级-完全理解,能够结合工作理解基础,明确每一个概念的真正意义,有自己的反思和总。
高级-完全吃透,随着思维和技能的提升,起于基础,又归于基础,以解决问题为导向。
03 学习方法
职业介绍百度即可。
其他建议看理论书籍,花一到两周时间系统学习,最好不要百度。
自学软件测试,该读写什么数据?
测试分类
01
功能测试
亦称黑盒测试,常被调侃的点点点工程师,分app测试(手机上的应用程序)、web测试(浏览器访问的网页)、接口测试(访问服务的资源路径)三种。
别管网友如何调侃,如果你能成为业务专家,点点点,未尝不可。
偏题了,害~
初级-根据公司要求,会其一,了解另二,最好了解接口测试。
中级-三者都通;业务水平在项目组中等偏上。
高级-三者都精通;业务精英或者业务专家,可怼产品,能给建议;有全局意识,逆向思维,破坏性思维,主人翁意识。
02
性能测试
初级-无要求,掌握是加分项。
中级-熟练使用主流的性能测试工具,如jmeter、loadrunner等,有相关性能压测经验;能手撸压测脚本;了解服务架构设计,了解性能分析,能协助开发调优。
高级-另一条专职专岗的技术路线——性能测试工程师,调优、架构、压测平台玩得有模有样。对技术要求特别高,不建议走此路,除非你真的喜欢,有天赋,肯努力。
03
白盒测试
初级-无要求,简历上写了是减分项,除非你真懂。
中级-多少知道一点开发的代码架构设计,会bug定位,了解代码走查,代码诊断,代码审查等。
高级-技术专家,部门带头人。对技术要求特别高,不建议走此路,除非你真的喜欢,有天赋,肯努力。
04
安全测试
初级-无要求,简历上写了是减分项,除非你真懂。
中级-多少知道一点渗透测试、
SQL
注入、XSS攻击、暴力破解等。
高级-另一条专职专岗的技术路线——安全测试工程师,准黑客或黑客级别。
05
自动化测试
具备编码能力,以开发app自动化、web自动化、接口自动化、PC自动化、数据自动化、各类自动化平台项目。
初级-无要求。了解常用的自动化框架即可。
中级-掌握一种或两种编程语言;熟练编写自动化测试用例和脚本,能够深入到自动化测试框架的方法层;会debug。
高级-已经掌握各类开发技术,充分了解各编码语言、各自动化框架的优缺点,深入到自动化测试的架构层,具备框架开发能力,能根据工作需求进行设计,能开发自动化测试平台、效能平台等,能独立承担中大型自动化测试项目。
测试技术
01 网络协议
初级-初步了解TCP/IP、HTTP、HTTPS等知识,包括但不限于了解一个url访问的生命周期,区分get请求和post请求,知道cookie、session等;会抓包。
中级-结合工作,能在各种复杂场景下的追溯请求;懂抓包;懂mock;懂篡改请求响应数据等高级-掌握网络编程技术。
02
Linux
目前,大多数公司的服务器部署在linux系统上,且云服务正盛,故需要掌握该技能。
初级-会用常用命令,如查看,复制粘贴、访问日志等。
中级-安装软件,搭建服务,会排错;shell初级脚本;能手撸Linux三剑客之一grep;了解云服务知识。
高级-会问题排查,熟悉系统指标;shell高级脚本;正则表达式;能手撸Linux三剑客另二之sed、awk;熟悉各类云平台及服务。
03 编码能力
同上面讲的白盒测试和自动化测试,有些许相似之处。
初级-无要求,了解基本语法。非科班专业,建议学python。
中级-独立或部分独立完成一个项目。
高级-独立完成一个复杂项目;熟悉常见架构,分布式系统;能实现后端服务,具备全栈开发能力。
04 版本交付
初级-无要求,但要知道什么是版本管理和版本交付,知道git和svn工具,了解Jenkins。
中级-随着自动化测试的进行,编码技术的提升,自然会掌握该技术。
高级-没啥说的,看代码,合代码,控制项目版本,CI/CD。
05
数据库
初级-安装、访问、常用的增删查改sql语句,工作中使用最多的是select和update语句。
中级-子查询、分表查询,存储过程,索引;mysql、redis。
高级-搭建服务,部署系统,问题排查。很多线上问题跟数据库有关。
06 其他技术
如缓存,多线程,Docker,k8s,中间件mq、nginx等。
初级-无要求。
中级-根据公司要求来,懂一些测试方法,出现了相关bug,知道咋回事,而非一脸茫然。
高级-熟练掌握各类技术,知道其原理,上手测试毫无压力。
软技能
01 项目相关
初级-没啥想的,干好本职测试工作,好好学习。
中级-熟悉测试业务,至少是项目负责人,如果一直待在一个行业,对该行业有了解和认识;除开工作,开始思考一些问题,如提升效率等,并注重文档写作、个人总结等。
高级-吃透业务,吃透行业,吃透测试的本质,owner独当一面,输出 & 分享,向上汇报……太多了,因人而异。
02 职场相关
独立思考、逻辑能力、解决问题思维、风险意识、分析能力、执行力、沟通能力、团队协作能力。
这个不罗列了,因人而异,因追求而异,略偏题。
欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/)
Powered by Discuz! X3.2