一直以来我看到测试岗位有个发展路线问题,抛弃所谓的初级工程师,中级工程师,高级工程师的说法,大致是新人从测试执行做起,然后是用例设计,相当于基本的功能测试,接着发展就开始区分:有的深入测试用例设计,继续高级的功能测试;有的发展技术,分了性能测试,安全测试,自动化测试等等;有的走管理线,就是所谓的测试组长,经理,主管。另外还有个技术加管理的测试架构师,我没有见过只好轻轻略过。
我感觉这么些年,测试领域受到很多压力,包括技术含量,可替代性等等,所以我初步认为测试方向划分出不同的进阶路线,一方面试图解决测试人员职业规划和自我发展的问题,一方面向外彰显了测试领域的技术含量和不可替代性。这么做优点是让测试体系更加完整,然而缺点是(此处也许有不同意见)把我们测试方向中最核心的功能测试(尤其是最基本的手工测试)弄成了最低级的岗位。
这种划分基于技能,有它存在的必要,就像你得有代码技能才能做自动化,有渗透技能才能做安全,有管理技能才能做主管等等。而我这几年工作后,对于测试岗位划分的理解更趋向于测试内容的归属性。
为了保证客户能正常使用各项我们承诺的系统服务,我们需要预先验证这些功能,所以有了功能测试;为了保证客户的信息不被坏人盗用,我们需要预先模拟黑客们各种盗用信息的手段,所以我们有了安全测试;为了让我们的oa系统能让1000个职员一起用起来,我们就需要预先模拟1000个人的使用,所以有了性能测试。
除了这些直接面对内容的,还有面对测试支持的。比如为了让功能测试更有效率有了自动化,为了测试工作的顺畅有了测试管理,为了各项测试可以开展还有了测试环境维护。
没错,这些划分可以说是同一个等级的,都是为了在某一项内容上保证客户不会遇到质量问题(非产品业务问题)。这些内容全部组合在一起就是测试工作,发现问题,服务质量。
在测试的每个细分方向都有很多事情可以做(以后详述),如果你觉得性能测试,自动化测试高于手工测试,我不会做什么反驳,只请你静下心来,不要执着于你对某个技能有兴趣或者这个技能高大上,首先搞清楚你追求的这个测试内容方向。简单举个例子,上面说过性能测试,这个内容方向是什么?最重要的不是你代码技术有多好,有多了解多么会使用工具,而是你真的会模拟1000个用户的场景,然后在这个场景下系统的表现你能判断它是否满足实用,是不是这样呢?
你的发展终究落实到你要完成的测试内容上,怎样完成地更好远远比你会什么技能更重要。
网友评论