请选择行业
请选择职位
请选择省份
请选择城市

提升软件测试工程师自身价值方法的一些思考

时间: 2015-04-20 11:02   作者: 51Testing软件测试网采编   点击次数: 
 
  看了前面几位同事提的关于核心价值的文章,激发了写点东西的欲望,补充一线屌丝的思考。没试过写类似的文章,尝试一把。
  测感,精准定位,建立在良好的知识体系、丰富的实践经验的基础上的,当然有时候会加上一点点运气。对于出校门很久的同学们来说,如何维护自己的知识体系,有计划目的地积累实践经验,一直都是个难题。
  另一个问题是,没有一个公司的vision是:培养世界最优秀的xx人才——除了教育机构例如新东方厨师学校之类的。所以我们的问题会变成是:如何在工作中,顺利地维护自己的知识及经验体系,葆有竞争力?
  谈谈我对提升价值方法的一些思考,不是什么成功经验,只希望能给暂未找到路子的一线同学提供一些启发,虽然我认为在咱公司,这种人很少^^
  如何阅读
  我先讲讲我之前的一些不好的经验,
  1、知识积累不等于剪报。我曾经很热衷于收集各种信息,放到邮件里、evenote里,但实际经验是,收集完以后就再也没去看,等过几年一看,已经过时了。read it later经常变成read it never。我的看法是,趁新鲜,感觉读、理解、甚至可以做一些实验。我们得相信我们的大脑,大脑理解了以后,过一段时间可能细节会模糊,但pattern肯定会深深地印在你的脑海里,细节可以虽然用google唤醒。
  2、知识体系的构建需要靠啃教科书。这个到目前为止我还是认可这个观点,因为很遗憾我没有接受过计算机相关学科的教育,大学里跟计算机相关的唯一教程是教我们如何检索论文。但有个问题是,这对我们来说现实吗?我们有太多的理由让我们在一堆教科书前停步,一年能读下一门基本就是极限了,但问题来了,有那么多门学科等着我。幸好,经历告诉我们,知识体系的维护,啃教科书只是需要,不是必要。当我们解决完一个技术问题,如果多花1、2个小时,就可以对相关领域做一次知识探底,脱离山寨的重点不在于你能不能解决问题,而是你在解决问题后愿意付出多少。
  接下来给大家介绍一下在工作中读源码的几个方法,可以小试一下:)
  1、善用碎片时间。工作过程中不可能给你一段很长的时间去学习,除非休年假的时候。最富裕的碎片时间在哪里?当你看到一个陌生的类或方法时,果断戳下去,一层一层戳,至少看到完全是你熟悉的代码为止,如果一直都是陌生代码,我一般是戳到native那层位置。做这个一般只需要花你的1-3分钟,一天中你可能会戳个几回,你会发现一段时间后,你戳的时间慢慢地减短了。
  2、除非是你要测试的代码,或者跟你要测试的代码紧耦合,否则学习时别浪费太多时间在业务代码上,否则会出现两个重点:理解业务、学习实现,两个重点出现的时候,个人觉得最好还是拆开来学,比如花90%的时间理解业务,有些非关键的方法知道他是做什么的就可以了,不详细看他实现,然后再用,10%的时间再深入理解实现。
  3、我们可以多花时间在成熟框架的代码上。
  目前我感知的最成熟的JAVA代码是Java api。java api带给我们的不仅仅一堆好用的api,降低我们的开发成本,更重要的是,它同时也是我们身边的老师。今年有幸做过一点中间件的测试,在这些内部或外部的中间件的代码里,可以找到很多跟java api里一样的设计、实现。如果你花点时间进去,你可能会有两个感受,a、很多熟悉的代码,原来他里面的实现如此的精妙,赶紧抄到业务代码里;b、原来java还有这么牛x的东西,我/开发写的功能,如果用这个设计,得稳定多少。
  除此之外,外部、公司久经考验的项目的代码,也是我们学习的对象,不一一点名了,另外有一点要注意的是,当你的业务代码里,出现一个新的框架或工具时,读懂它,至少读懂你用的那些功能,这是飞苍必要的。
  4、说个小技巧,善用maven。虽然淘宝的源码是开放的,有需要的人随时可以拿到源码,但我觉得除非你想改代码,否则没必要co下项目代码。代替的方式是直接通过maven把source包搞下来看、调试。这样做有几个好处,1不需要申请空间权限(节约 5分钟-3小时),2不需要co(节约0-20分钟,视乎工程是否有文档啊图片啊各种坑爹的东西),3、不需要导入到idea(解决0-20分钟,视乎你的idea有多快)。
  测试,当你对某段代码,某个实现理解时有疑惑,又没有搜索到权威发布的时候,测试或者说实验绝对是让你了解真相最快的方式。
  测试时注意尽可能地将范围缩小,你期望地到什么结果,你得到这个结果最小的成本是什么?我是无法忍受我做一次实验要等着1分钟的build,1分钟服务启动。所以我经常放着几个空的工程,用来做实验。
  另外一个,System.out.printf不建议作为单元测试的方式,但在实验时,也是个不错的选择。
  归纳
  归纳有个一个小技巧,就是联想,或者说关联思考?联想有助于归纳你所学到的东西,并在需要的时候可以演绎出新的知识。联想同类型的业务的现实,可能一开始没有太多可以联想的,但时间长了会好的。

打印本页 | 加入收藏

上一篇:大学生求职面试 切勿“包装”过度    

关闭  
主要城市: 北京 上海 杭州 广州 南京 武汉 长沙
全部城市: