一、背景介绍
近一年经历过2年技术调研,针对专业人才的评定原则及等级划分给与一定的指导,比如软件测试工程师需要具备哪些能力,工作职责及高、中、低级别如何进行区分。在参与访谈过程中,发现针对测试的部分应该梳理出一份通用的技能图谱,供参考。
二、高中级如何定义
在最近一次访谈出,印象中最深刻的两项内容,我认为有必要拿出来探讨一下,其一是中级和高级的定义,其二是证书的价值及重用性,已经成为我们升职加薪的筹码。
1、高级和中级定义和我们想象中的不一样
通常来说,高级和中级这两个术语在技术领域中是用来描述一个人的技术能力和专业水平的。根据我们的理解高级通常指的是具有深入、全面和战略性的技术知识和经验,而中级则通常指的是具有基础和核心技术的知识和经验,所以说高级知识技能方面应该达到精通,中级应该达到掌握。
然而从公司角度来讲,在实际情况中,高级并不一定需要在所有技术领域都具备深入的知识,而是更注重业务整体方向把控和管理能力。高级人员可更注重战略规划和项目管理,他们的职责更多在于管理和指导其他人,中级人员则需要具备更深入的技术知识和实践经验,以便进行日常的工作任务。
所以,高级对于技能掌控程度某些技能到掌握甚至了解的程度即可。这跟我以前的认知有一些出入,把这点拿出来分享也希望对各自的职业规划有一个清晰的认知。
2、证书已经成为加分项
软考证书已经成为求职和职业发展中的重要加分项,上面我们提到高级人员技能掌握程度可能不如中级人员,那么如何去区分和评定高级呢,一个重要的参考是职称证书。
测试从业人员建议考软件评测师、信息系统项目管理师这两个证书,一个中级一个高级。那么除了职称外还有哪些优势呢?
1、展现实力
在考取证书的过程中,对自己的知识掌握能力有一定的提升,对于职业发展也是有一定好处的。
2、升职加薪
在79%的软件行业雇主更倾向有证的学生,软考证书的也会成为衡量员工的项目管理能力的标准,会给予涨薪或奖励,同时也是企业内部升职的条件之一。
3、以考代评
所谓的以考代评,就是考过对应的级别,就能获得对应级别的职称。在中国中高级职称是可以做很多事情的,除了升职加薪,对买车、买房、摇号等都是有好处的。
4、积分入户
软考证书在申请北上广深等城市户口是可以加分的(积分入户城市),例如在广州,软考中级职称是可以直接入户的。
5、单位资质
系统集成的企业为了能够获得更多的大项目,必须申请企业的资质级别,申请资质的条件之一,就是要求员工求员工有一定数量的中级系统集成项目管理工程师,高级的信息系统项目管理师证书。项目申报成功后,公司对持证人员给予奖励。
6、个人挂靠
这部分是和上文挂钩的,由于资质的需要,前几年有单位愿意出钱购买个人挂靠证书,费用不菲,但是随着近几年证书的泛滥,国家政策改变,社保联网等这方面的需求也几乎消失了。
7、政策扶持
继续教育专项附加扣除税的扣除标准是:
(1)学历(学位)继续教育期间每年可抵扣每月400元,48个月4年,每年4800元,4年19200元。
(2)技能人员职业资格继续教育、专业技术人员职业资格继续教育的支出,在取得相关证书的当年,按照3600元定额扣除。
结合我自己经历,除了4和6我没有参与外,4是因为二线城市无此政策,6是当年考下来的时候没有这个政策出台,所以说整体上各项内容真实性可靠。
三、测试人通用技能图谱及专业技能介绍
针对一个人的综合能力参考如下技能图谱:
包括通用专业知识、专业技能、要求三方面,以上作为一个名测试工程师都是必须掌握的,这里重点说一下专业技能技术自动化、安全、性能3个部分。
*专业技能
*测试策略制定
*测试计划编写
*测试用例设计
*缺陷跟踪与报告
*测试报告编写
*自动化测试技术
*性能测试技术
*安全测试技术
*数据库测试技术
*接口测试技术
*测试平台
专业技能介绍
自动化测试技术
1、自动化测试分为几个方向及常用工具
自动化测试分为接口自动化、页面自动化、性能自动化,对应工具参考下表:
2、一个公司或者一个人如何开展自动化测试,开始顺序应该怎样
关于自动化这块我感觉一名测试人员常采的坑我已经全踩过了,总结经验最开始的顺序选择反了,新手一般掌握信息量不足,自动化分为几个方向,每个方向适用场景及难以程度不清晰,找到一份资料后就专进去学,容易造成后期开展困难。
开展工作前调研目标对象和目的很重要,单纯想从易用性及落地角度来讲,他们之间的关系应该是这样。
1)接口自动化测试先行:接口自动化测试相对UI性能测试和UI自动化测试更简单,容易实现。接口测试可以尽早开展,以便暴露和解决潜在的问题。同时,接口自动化测试可以为后续的性能自动化测试和UI自动化测试提供基础。
2)性能自动化测试:在接口自动化测试稳定运行后,可以开始进行性能自动化测试。性能自动化测试主要关注应用程序的性能指标,如响应时间、吞吐量、并发用户数等。通过性能自动化测试,可以验证应用程序的性能表现和稳定性。
3)UI自动化测试:在性能自动化测试稳定运行后,可以开始进行UI自动化测试。UI自动化测试主要关注用户界面的操作流程和交互效果。通过UI自动化测试,可以验证用户界面的易用性和用户体验。
性能测试技术
1、性能测试常用工具
目前流行的JMeter、LoadRunner,如何刚开始接触直接选择JMeter比较好,一般公司都用这个。
2、性能测试学习路径
学习性能测试基本概念和原理->选择合适的性能测试工具(jmeter)->学习性能测试工具的高级功能[如参数化、断言、关联性]->学习性能分析和优化->实践性能测试
大部分人需要提升的是性能分析和优化以及通过实践总结分析的能力。
安全测试技术
1、安全测试现状
安全测试工程师岗位在一线和二线城市都有需求,但需求量并不是特别大。如果能够专门从事安全测试,工资也会比普通的功能、自动化测试高。一般公司对于功能性、性能要求多一点,安全测试等级低一点。
对于测试工程师来说,能够掌握常用的安全测试工具即可。
2、安全测试工具
BurpSuite
BurpSuite的安全测试原理是基于拦截和修改HTTP请求和响应来实现的。它通过设置代理服务器,拦截浏览器发送的请求,并显示在界面上,用户可以对请求进行修改和调试。同时,BurpSuite还提供了多种攻击模块和安全测试工具,如漏洞扫描、SQL注入、跨站脚本攻击等,帮助用户自动检测和利用应用程序中的安全漏洞。通过拦截和修改HTTP请求和响应,BurpSuite可以模拟不同的攻击场景,检测应用程序的安全性和漏洞,并提供详细的报告和分析结果,帮助用户及时发现和修复安全问题。
附上一篇工具使用指南:https://zhuanlan.zhihu.com/p/613849174
Appscan
通过“探索”功能,利用HTTPRequest和Response的内容,爬行出指定网站的整个Web应用结构,AppScan本身有一个内置的漏洞扫描的规则库,可随版本进行更新。从探索出的url中,修改参数or目录名等方式,构造不同的url对照组向服务器发送请求or攻击,根据HTTPResponse返回的内容,和正常请求所返回的响应作对比,是否产生差异性,而这种差异性又是否符合扫描规则库的设定规则,以此来判断是否存在不同类型的安全漏洞,若APPScan可判断存在安全漏洞,则对这些漏洞的威胁风险给出说明,进行严重程度提示,并给出修复的建议和方法,以及漏洞发现的位置提示。
附安装教程:https://zhuanlan.zhihu.com/p/469554026
总结
以上介绍了两种测试工程师升职加薪密码,软考证书及测试技术,软考证书不仅是一种资质认证,更是测试工程师职业发展的重要保障。此外,除了专业知识、要求外,掌握自动化、性能和安全测试技术也是升职加薪的关键密码。自动化测试技术可以帮助测试工程师提高测试效率和准确性,减少人工操作和错误;性能测试技术可以检测应用程序的性能表现,确保其在高负载和复杂场景下正常运行;安全测试技术则可以发现和修复应用程序的安全漏洞,保障用户数据和信息的安全。掌握这些技术需要不断学习和实践,了解最新的测试工具和技术趋势,从而更好地应对不断变化的测试需求。
作者:M&T.