||
软件这个行业从用户的需要开始,到应用系统交付为止,完成一个有效的生命期。在这样的生命期中开发设计与测试贯穿始终,其中涉及到的各种角色也是职业人逐步提升自己所面临的各种短期长期的目标,但是这不是我们本文讨论的目的,我无法给出一个有效的路线图,我只能提出来尤其在测试这个行当,人们所面的各种困境的根源,毕竟尽管从底层做起,一步步提高是每个从业人的打算,但是你必须首先知道来自行业的阻碍、自我能力的约束和工作团队的限制,并且每个人都知道的一个真理,权力是金字塔形的,自我提升的路途同样是充满矛盾,沮丧和困惑。
首先比较一下开发技术与测试能力的区别。我们谈及两者之间的职业选择,往往不知道这两者最大的区别在什么地方。细心的你会注意到,在说到开发的时候,我提到的是“技术”,而对于测试却是“能力”,这两者可是两个职业本质上的区别。
开发设计最终的实现方法就是采用计算机语言编码实现,计算机语言是内涵周延经过严格设计的逻辑推演体系,尽管在形式上很复杂,但是本质上属于数理逻辑的一部分,这样一个知识技术体系是能够积累与传播的,我们可以通过教学或者自学的方式,获得相应的技能,并能够通过实践不断扩展自己的技术能力。如同代码是可以继承复用一样,从事开发工作的人,所有的工作都是提高自我的基石,坚实而稳固,在广度和深度上随着时间的推移,获得更多的收益,从而构筑无限制的自我能力成长的空间。
测试是非编码化的工作,在技术实现与业务解析方面,更侧重于后者。可以说,测试是一项经过流程化控制的手工作业活动,它的工作特点就是不可分享与继承工作成果, 不可能以编码化的手段,实现工程化管理。所以说来,软件测试一直在谈论方法论,但是却无法将测试流程实现工程化。尽管有些项目局部测试可能采用了自动化的手段,但是从完整的测试流程上来说,这些手段远谈不上复杂的技术积累(也不可能采用复杂的测试编码)。对于从事测试行业的人来说,自我成长的路径是非常具有不确定性的,因为缺少以逻辑推演为基础的工作,自我能力的培养是难以积累拓展的,如同踩在瘫软没有支撑的胶皮上,缺少了坚实的登高的台阶。测试人员最容易感到职业的彷徨,就是因为这个职业能力的不可积累性。
我不能过多讨论基于逻辑推演的知识与技能的可积累性,那个话题太大也太长,或许人类进步的秘诀也存在于此。像许多人说的那样测试更像是一种艺术活动,灵感来自对于技术与业务衔接的洞察,做好测试活动其实也是需要很高的感悟力的,可惜的是,我们的流程化管理限制了个人感知力的发挥。当测试人员在短期内掌握了测试流程和测试工具后,就会陷入前途的迷茫状态,因为往往地,他们认为这就是测试本身的全部知识。也的确,在做应聘面试的时候,除了了解测试的方法论,可做谈资的确实不多,也无怪乎测试的职位薪酬普遍低于开发的职位。
不要忘了我之前提到的,测试这个行当更加偏向于应用系统的业务逻辑,这意味着一个并不让人感到舒服的结论,测试工作本身能够积累的不是测试技能,而是测试对象的业务逻辑,这个是比较掉诡的结论,也是从来被人忽略的成长因素。因为从事测试行业的人员随着测试应用的交付,也就远离了这样的业务环境,他本身不是测试业务的从业者,却在职业发展路途上跟这个行业形成了某种捆绑。最糟糕的也是最常见的情况,没有哪些测试员对所测试应用的行业有过深入而广泛的了解,也就放弃了自我积累的机会。这种积累是否对自我成长有所助益?答案并不乐观。并不是所有的积累都是有效的积累,过于偏狭,用途和接受面很受限制的系统,其实对个人成长起到的作用是不大的,在之后的工作中能够再次相遇的机会不大,对他人对其他公司来说,那样的系统过于生疏,也缺乏说服力。只有社会上得到广泛认识的业务知识,才是测试人员有效的积累,比如银行,物流,财务,人力资源等等,这样的业务能力的积累,为今后做管理,顾问,测试架构,系统高端设计都有帮助。这么说是不是有所感悟了?做测试对自我能力成长最重要的是选对测试的对象,有点无奈了吧?没有办法,测试就是作嫁的行业,当自身行当缺少成长空间的时候,只能向外要成长空间。嫁女要嫁对郎,测试要选对行。
当然,单纯从测试行业来说,能够自我臻至化境,将测试看作艺术一样品味的,也大有人在,至少在某种程度多多少少有所领悟的,也是一种收获。测而有优则仕,能够拐上管理路途算是成功转型,否则,在洞察力上高人一筹,成为解决问题的高手,也是自我成长的一种测度,可惜的是这种成功不可复制,而且带来的物质上的回报可能会让人有些失落。Tim Riley 写了一本《 Beautiful Testing》的书,把这本书当作一本艺术导读的书来看,而不是技术指南,你会体味到测试的美感,毕竟成功的标志,物质和职位的获得不是仅有的衡量尺度,自我的满足和他人的认同也算是可选项,尽管不那么主流或者显得有些落魄,但至少保有一种骨气。
上面是从行业的特点来讨论自我能力积累的路途,此外环境的影响对自身发展的选择也起着至关重要的作用。每个公司都有自身的文化,所在团队也有自己的特点,审慎评估自己的能力与所得职位及薪酬的公平性,是对自己也是对公司发展负责的态度。对于新人来说,刚刚从事这个行业,一切的积累都是从零开始,能够提供的选项不多,心态比较平和,工作态度都很上进,这样的日子很累也有着无尽的期盼。每到两三年,往往你会很快面临一些门槛,也许来自自我成长的烦恼,也许是晋职的焦虑。任何一个公司在提供晋职的机会上都不可能是完全公平的,是一种平衡和个人因素参杂起来共同作用的结果,因此结局不可能是人人圆满的。评估最终的结果,当过多个人因素参杂导致不良结果时,也许尽早离队是个好的选择。很多技术能力经验丰富的人,在情墒上却是可怜的低能,这样的人在职业发展上会遇到很多烦恼。相对于其他团队或者公司而言,他们能够看到的是个人的能力与经验,而不会有人情之间的平衡考虑,因此评估结果相对客观一些,也是这类人可行的成长之路。对于整个公司薪酬与社会薪酬的失衡,解决的途径其实不用说太多了,这样的公司需要在整体上做出调整,等待公司自我纠偏需要给它足够的理由。
总的说来,测试这个行业虽然入职的门槛相对低,但是发展起来,却是很容易触摸到成长的天花板,很多有关测试职业发展的建议,在我看来都没有抓到这个行业真正的特点,也无法解决测试人员实际遇到的职业发展的困惑。本文没有意愿也没有能力提出有效的建议,只是提出问题关键所在。纵观IT行业的发展趋势,将测试纳入编码化工程化,是解决这个行业发展的最终途径,不过由此带来测试门槛的大大提升,对测试人员来说是个巨大的挑战,当然也是巨大的机遇。
Archiver|手机版|科学网 ( 京ICP备07017567号-12 )
GMT+8, 2024-11-26 08:56
Powered by ScienceNet.cn
Copyright © 2007- 中国科学报社