软件测试在职业发展上,可以概括分为“管理”和“技术”两大类。另外,软件测试还可以在质量领域发展。
1. 软件测试在管理上的发展
软件测试管理是大家比较熟悉的软件测试职业发展路线之一,比较流行的职位包括测试组长、测试经理、测试代表、测试主管、测试总监、测试部长等。不同的公司中相同职位的工作范围可能略有不同,按照管理级别的高低,大致又可分为以下三级。
· 初级软件测试管理者:测试组长
一般由有两年左右工作经验的测试工程师担当。可能会管理会管理2~5名软件测试工程师。一般来说,测试组长不会负责整个产品,只是负责其中一个或多个特性。
测试组长并不是完全的管理者。从事的管理工作大多仅集中在测试计划的制订和执行上;在产品测试上,他们常会负责产品重点、难点的测试;除此之外,他们还要负责带新员工,让测试工作可以顺利进行下去。
· 中级软件测试管理者:测试经理、测试代表、测试主管
职位排名不分先后,一般由有4年左右工作经验的测试工程师担当。
中级软件测试管理者负责的对象为产品,可能会管10~20名软件测试工程师(其中包括测试组长)。
中级软件测试管理者最重要的工作还是运作测试项目,制订并执行测试计划,测试结束后还需要对产品质量进行评估,给出产品发布建议。要做好这些,需要他们掌握更多的项目管理知识,深入理解项目价值,做好项目范围管理、质量管理、成本管理、时间管理、风险管理和人力管理。除此之外, 他们还要和开发人员、市场人员、服务人员等密切配合、紧密合作,其间,沟通协调能力必不可少。
· 高级软件测试管理者:测试总监、测试部长
一般都有10年以上软件测试工作经验,负责的对象是产品线或公司。
高级软件测试管理者需要理解产品的商业目标,直接对产品成功负责。他们需要对测试团队的发展负责,进行人员招聘和培养,留住关键人才,提高或更新不合格人员,提升团队的胜任力和职业能力;负责项目财务管理(预算和控制);负责资源的计划与分配;持续改进测试能力,提升效率和产品质量,从测试的角度对交付产品的成本、周期和质量负责。
2. 软件测试在技术上的发展
软件测试在技术上的发展方向,似乎不像软件测试在管理上的发展方向那么明确。一种观点是按照测试资历和能力分为助理软件测试工程师(或者是实习软件测试工程师)、初级软件测试工程师、中级软件测试工程师、高级软件测试工程师和主任软件测试工程师(或是资深软件测试工程师)。但是这种分类方式并没有突出“软件测试技术”,所以我个人更倾向于一种简单的分法——产品测试技术和专项测试技术。
· 产品测试专家:软件测试架构师
软件测试在技术上可以向产品测试技术专家方向发展。有些公司称产品测试技术专家为软件测试系统架构师(本书简称为测试架构师)。
系统架构师在业务(需求)向开发技术转换的过程中起到了桥梁作用,负责产品开发的整体架构设计;测试架构师是在业务(需求)向测试技术转换的过程中起桥梁作用,负责产品测试的整体架构设计。
系统架构师负责对产品开发中的技术重点和难点进行研究与攻关;测试架构师负责对产品测试中的测试重点和难点进行研究与攻关,为测试组织提供最优的测试方法。
有人评价系统架构师是产品开发的 “灵魂”,那么测试架构师就是产品测试的 “灵魂” 。
· 专项测试工程师
软件测试在技术上,还可以向专项测试工程师方向发展,成为软件测试某领域的专家。
从测试体系的角度来看,软件测试发展至今,已经形成了一套完整的测试体系。测试体系中的任何一个环节,测试策略、测试分析设计、测试执行、测试评估、测试流程等每个领域的内涵都很丰富,包含了很多可以深入发展研究的技术,比如自动化测试技术、测试工具(包括产品测试模拟工具和测试流程管理工具)开发、缺陷分析和测试评估技术等。
从产品质量属性的角度来看,专项测试技术还可以包含性能测试技术、可靠性测试技术、安全性测试技术等。
最后感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:
这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你!有需要的小伙伴可以点击下方小卡片领取