要想分析软件测试工程师在不一样阶段的技能需求,首先要知道测试工程师在软件上线过程当中担任的角色。html
不少人一说到软件测试工程师,仍是会想到那些反复使用软件,试图在频繁操做中找到BUG的人员,也就是一般说的根据测试规范和测试案例对软件进行测试,检查软件有没有出现错误,判断软件是否稳定的角色。可是这是一种很是陈旧且错误的观念了。数据库
正由于上述的观念,致使软测试工程师在开始的十年里基本属于不那么被重视的地位,认为测试工程师从事的是重复的技术含量不高的工做,随时可被替代。服务器
根据调查,国内的软件测试,在互联网刚刚崛起的十几年里面被漠视的态度,尤为是中小型的软件企业,没有配备专门的软件测试人员,测试工做每每被开发岗位兼任,通常只是进行简单的白盒测试,这种作法在必定程度上等于让用户也充当了测试的角色,形成的后果每每是用户发现一堆问题后进行反馈,而后修改,反复修改形成的后果就是软件难以稳定,用户的耐心也被消磨殆尽,最终致使项目失败。网络
直到近年来各大型的的互联网公司崛起,对于软件的需求越加丰富,对于软件的稳定以及性能的要求也愈来愈高,对软件测试工程师的技能要求也是一个挑战,每一个测试工程师都要随着工做的要求对本身的水平作相对应的调整。架构
下面咱们就来盘点不一样阶段的测试工程师所须要的的技能。并发
初级测试工程师(1-2年测试工做经验)框架
初级测试工程师是入行1-2年内的工程师,进入初级测试工程师的门槛不会过高,通常对专业的限制不大,有专科学历,要熟悉软件的测试技术、方法、流程、测试文档等。最好再有个ISTQB的证书,这个证书这几年比较流行,也不难考,业内差很少把他认为是初级测试工程师的一个上岗证,固然若是入职的公司没有特别要求,不考也无所谓。工具
这时候作的测试的是软件的功能方面,若是想进一步提高,还须要熟悉自动化测试流程、管理以及测试框架等等,如功能测试工具WinRunner、QuickTestPro,熟悉一些主流的软件工程方法论和思想,如RUP、CMM、CMMI、XP、PSP、TSP;了解软件工程,软件生命周期模型基础,了解软件配置管理等。性能
另外,做为测试工程师,沟通能力也是十分重要的,要学会及时与开发人员及时沟通,开发人员与测试人员并非处于对立的两端,而是对软件互相成就的两种角色。学习
2020年6月软件测试工程师职位招聘
中级测试工程师(3-4年测试工做经验)
要达到中级水平,最低也得3年工做经验,作的工做内容也会有所变化。
中级测试工程师编写软件测试方案、测试文档,与项目组一块儿制定软件测试阶段的工做计划,可以在项目运行中合理利用测试工具完成测试任务;再也不局限于简单的功能测试,要会自动化测试、性能测试等。
自动化测试比较简单的,学习难度相对也还好。性能测试是将来十年的趋势,因此在这个阶段的重心就是性能测试,要在这个阶段积累经验,沉淀必定的知识积累、知识深度。因此在这个阶段必定要对常见的性能测试工具备深刻的了解,并在此阶段培养自身的核心竞争力。
市面上最经常使用的性能测试工具是JMeter和LoadRunnner,这两个工具都有各自的优点和各自的短处,但不能否认的是他们占据的市场份额。
JMeter:是Apache组织开发的基于Java的压力测试工具。用于对软件作压力测试,它最初被设计用于Web应用测试但后来扩展到其余测试领域。 它能够用于测试静态和动态资源例如静态文件、Java 小服务程序、CGI 脚本、Java 对象、 数据库, FTP 服务器, 等等。JMeter 能够用于对服务器、网络或对象模拟巨大的负载,来在不一样压力类别下测试它们的 强度和分析总体性能。另外,JMeter可以对应用程序作功能/回归测试,经过建立带有断言的脚原本验证你的程序返回了你指望的结果。他的优势是安装方便,且是开源软件,是免费的,因此不少小公司在进行性能测试时候会使用这个工具,可是它的劣势也比较明显,它在进行系统性能时没法模拟真实状况测试,且作较大的性能项目时候没法有效的进行测试。这个软件的学习通常能够本身购买书籍自学便可,难度不会过高,是最开始进入性能测试领域的工具优先之选。
LoadRunner:最初是Mercury公司的产品,2006年Mercury公司被惠普收购,成为惠普的产品,后来在2017年,惠普的整个软件部门被全球第七大纯软件公司Micro Focus收购,成为Micro Focus的产品。
它经过以模拟上千万用户实施并发负载及实时性能监测的方式来确认和查找问题,LoadRunner 可以对整个企业架构进行测试。经过使用LoadRunner,企业能最大限度地缩短测试时间优化性能和加速应用系统的发布。
这款软件使用的优点很是明显,在进行测试时候可以进行实时监控,来帮助更快地确认和查找问题的所在,使用LoadRunner的VirtualUser Generator引擎,可以很简便地模拟应用系统的负载量。该引擎可以生成代理和虚拟用户来模拟业务流程和真正用户的操做行为。
不过他强有力的功能下是昂贵的购买费用,且这个这个工具的使用也有必定门槛。因此通常购买这个软件的是中型或大型企业,他们愿意花费这个费用去向LoadRunner厂商购买软件;不肯意花费这笔费用的小型软件开发企业也会去寻求一些破解版的工具使用,因此市面上对于会使用LoadRunner的工程师需求量比较大。可是尴尬的是市面上可以熟练使用LoadRunner的测试工程师却很少,因此LoadRunner厂商Micro Focus在近两年也有推出相关的针对LoadRunner的认证培训,在他们的官网上均可以进行查询。
Micro Focus官网:https://microfocus.viewcentral.com/events/uploads/microfocus/index.html
国内认证官网:https://www.saichenipa.com/lrsp_index
高级测试工程师(5年以上)
这个阶段通常属于这个行业的最高级了,固然也不排除还有更高薪资的,这里只是大概的数据。这个时候通常都不会只是单纯的进行测试技术的较量了,只想本身专心作技术也是不可能的了,管理到了这个阶段是不可或缺的。
由于在这个阶段你已经作到了必定的程度,你必然会升职,你要开始承担管理者与技术的角色。这个时候除了为本身团队提供技术方面的指导与支持,还要具有与客户打交道的能力,好比为其进行演示推介。你还要负责几个项目的测试,这个时候一方面要不断提供本身的测试技术,还要提升本身的管理能力以及沟通能力。固然到了这个阶段,咱们就能够从新梳理咱们的职业生涯,根据现状去规划下一步了。
其实整篇说下来,就是五个字-核心竞争力。测试工程师的缺口在十年内都是比较大的,而且技术人员通常都是须要时间成长的,不少企业的缺口已经存在,是来不及本身去手把手培养的,而且成本也太高,因此他们确定喜欢能够快速上手的。
并且测试工程师须要具有很是宽广的知识体系,这是基础的,在基础之上,咱们要思考咱们与通常的测试工程师不一样的是什么,一旦咱们发现咱们与别人同样,那咱们就会被别人选择;若是咱们有特定的技能,那么咱们就能选择别人。咱们在规划职业生涯的时候要时刻提醒本身,咱们比别的人高的点在哪里,如何保持本身的独特性。