三年之痒

本文涉及的产品
性能测试 PTS,5000VUM额度
简介:
眼看就要工作满三年了,对于大多数人来说是一个特殊的时期,对于我来说,也不例外。我也常常在想,我自己的定位是什么,我以后想要做什么,我该怎么选择,才能实现自己的价值和梦想。

  思绪回到三年前……

  我毕业于当时全国排名14左右的中南大学,学的专业是也是该校专业排名仅次于同济清华的土木工程。我没有像大多数人一样,选择去设计院,或者铁路局,工程局。我义无反顾的选择了金山软件,当时的我,几乎没有任何的犹豫。因为我相信,这就是我未来要走的路。

  金山软件是我梦想的地方,很早之前求伯君就是我的偶像。在高中时代,我就用过金山的WPS,毒霸,玩过剑侠情缘系列。在我看来,金山软件是一个值得自豪的公司,我能加入金山软件,更是一件自豪的事情。

  初中时期我开始学习QB,参加过奥赛,但是没有拿过什么名次。现在想来,当时经常获奖的几个同学,现在都没有在搞计算机了,也只有我是坚持了下来。正是因为这种坚持,让我有了机会来到金山。

  我所从事的是自动化测试工作,就是为WPS产品编写自动化测试案例或者测试工具。当时我加入时,产品的自动化测试程度还不是很高,后来我们使用QTP编写了大量的自动化测试案例,接着又打造了Box自动化测试平台,一个集任务发布、机器分配、环境准备、案例执行、报告收集、结果展示的分布式自动化测试平台。

  当时我还写过很多测试工具,最让我引以自豪的工具是用C#写的对话框检查工具(DialogCheck),功能是自动去打开所有WPS的对话框,检查窗口是否正确弹出。当时我对这个工具进行了精心的设计,后来我才发现,我的代码中使用了一些设计模式,比如:模板方法,反射工厂等。接着,我对设计模式产生了极大的兴趣,从《大话设计模式》、《Head First 设计模式》到《设计模式 - 可复用面向对象软件的基础》,让我受益颇多。

  后来,我开始意识到,由于非计算机专业毕业,基础知识自然成了我的薄弱环节,比如数据结构、算法、编译原理。我不能只停留在C#这种高级语言的层次。于是,我开始自学。为了证明自己学习的成果,我报考了国家软件设计师的考试,几个月的备战后,我非常顺利的通过了这个证明自己的考试。软件设计师原名高级程序员,这对我一个非科班出身的人来说,是一个极大的激励。

  公司组织结构几经调整,一直到现在,我所属的是金山互联网安全公司,负责测试金山毒霸等安全类产品。作为一个测试工程师,最令我引以自豪的是,我接触过软件测试的各个环节的具体工作。从界面层的QTP集成测试、基于C++底层接口的接口测试、测试工具及平台的开发、到性能测试,再到安全性测试。每一次转变,对我来说都是极大的提高。之前,公司并没有人专门做性能测试和安全性测试,我接到这个任务,并且开始了有趣的探索。比如性能测试工具LoadRunner、Silkperformer、OpenSTA、JMeter等等,甚至当时我蠢蠢欲动的打算自己实现一个性能测试工具。安全性测试中,我们研究了各种攻击方式,安全威胁,研究了各种安全扫描工具:FindBugs、PMD、LAPSE、Fortify SCA等等。我的(原创)攻击方式学习之XXX系列也是那时完成的。

  后来,性能测试逐步走向正轨,我开始负责毒霸C++模块的接口测试,属于白盒测试,我们都统一称作模块测试。当时我加入的时候,模块测试已经做了很长一段时间了,当时我们使用的测试框架是自己开发的CppTestFramework,我使用了几周后,发现CppTestFramework有很多不尽人意的地方,有的时候还会出现Bug,让我不得不停下案例编写的脚步去修正CppTestFramework的Bug。于是我想是否可以使用一些现成的测试框架,比如CppUnit之类的。后来,我发现了Google Test,简称gtest。这让我异常兴奋,gtest的简洁、易用,让我毫不犹豫的选择了它。所以你会看到现在还一直置顶的《玩转GTest系列》的文章。

  玩转GTest系列的文章很快就被gtest的作者zhanyong.wan发现,在他的鼓励下,我在极短的时间内完成了整个系列。现在的gtest官方主页右侧,还保留着我的文章链接。这个链接为我带来了可观的流量,更给我带来了极大的信心。

  接下来,就需要说服团队中的每个人,切换测试框架到gtest上来。于是,我特意举行了几次关于gtest的技术交流,向他们介绍gtest的特点和优势,并且从头开始介绍gtest的用法,以及一些能够吸引他们眼球的东西,比如:参数化测试,死亡测试,案例分布执行等等。渐渐的,大家都接受了gtest,于是,我用了1,2天的时间,写了个脚本,将以前所有基于CppTestFramework的测试案例代码自动升级成了gtest测试案例。

  模块测试的主要工作,是调用毒霸DLL的导出函数,尝试各种输入,然后检查是否达到预期的结果。有时候,我们还会对产品代码做一些单元测试。直接取下毒霸产品的代码,进行阅读、测试,让我对产品有了更深的了解。我对自己的代码要求很高,也容不得别人代码的瑕疵,所以,我很喜欢挑刺。我无法容忍开发人员命名时随意使用的缩写,我会给开发人员报变量命名的Bug,仅仅因为开发将Client写成了Clien。虽然Bugs数并不在我们的考核指标范围内,但我搜了一下,我发现的Bug数在整个测试团队(包括手工测试)中是排在前列的,虽然有很多Bug的优先级并不是很高。

  我是一个追求完美的人,我给开发提的一点点小的BUG,虽然不是立竿见影,但是是对开发代码有长远的促进作用。当我发现一个Bug时,我不是立即将它录到Bug库提交给开发,而是直接编译开发的代码,进行调试,找到Bug的根源。所以,我提交的Bug,基本上都会指出导致这个Bug的代码在哪个文件,第几行,以及,修复这个Bug的方法。也许开发不太喜欢过于强势的测试人员,我发现很多开发人员看了我的修复建议后,都要使用另外一种方式去修复它。这的确非常有趣。

  回到现在……

  我一直在思考,我的未来发展方向是什么。我是一个喜欢和代码打交道的人,也是一个愿意写代码一直到60岁的人。所以,一直以来,架构师是我梦寐以求的。我在测试领域的这三年,让我深刻的领悟到了软件测试的点点滴滴。我也在想,我是否需要坚持在测试这个领域继续发展。

  我心里怀着一个梦想,开发一款卓越的软件,让全世界为之受益。软件测试始终是在测试别人的代码,无法创造真正属于自己的产品。于是,业余的时间,成了我的快乐时光。我疯狂的学习、读书、写Blog,Coding。这一点来说,我非常的宅,不过我有一个喜欢和我一起宅的女朋友。一直以来,她对我的鼓励,支持都令我非常感动。我写了很多东西,都是用她的名字命名的,比如:NancyTetrisNancyBlogNancyGLines等等。

  Python是我业余时间时间学习并喜欢上的编程语言。我喜欢它的简洁和优美。我的很多工程都是使用Python来编写的,并且所以的代码都托管在Google Code中,以开源的方式提供着。我喜欢这种哲学。如果让我做一个职业Python程序员,会让我非常兴奋。

  我也想过做一个自由职业者。这样我就有大量的时间做自己喜欢的事情,专研自己喜欢的技术,前提是有某个东西能够给我带来稳定的收入维持生计。当然,我可以选择创业。我有一些想法,但是都没有坚持实施下来。

  我想,做一个Consultant也不错。据说这是一个在国外很火的职业。Consultant会遇到各种各样的环境,面对各种各样的难题,从事的是一个非常有挑战的工作,需要具备很强的解决问题的能力。

  也许,研究院会更适合我。我有着对那些未知领域无穷的求知欲望,我非常享受沉浸在研究中的快乐。同时,这也能让我找到自己专攻的方向,将某一门技术研究的更深更透。

  一个人想在某方面成为大师,需要在上面花费1万小时的努力。我希望我能找到自己的方向,并且坚定的走下去。

 

 

本文转自CoderZh博客园博客,原文链接:http://www.cnblogs.com/coderzh/archive/2010/03/27/three-years-work-thinking.html,如需转载请自行联系原作者

 

相关实践学习
通过性能测试PTS对云服务器ECS进行规格选择与性能压测
本文为您介绍如何利用性能测试PTS对云服务器ECS进行规格选择与性能压测。
相关文章
|
算法 NoSQL Dubbo
毕业三年,月薪30K,我想跟你聊聊!
很多读者私信问我,自己工作三年多了,随着工作年限的不断增长,感觉自己的技术水平与自己的工作年限严重不符。想跳槽出去换个新环境吧,又感觉自己的能力达不到心仪公司的标准,即使投了简历也没人来通知自己面试。就这样在原来的公司一天天的混日子,时间久了,感觉自己废了,就这么恶性循环着。
151 3
毕业三年,月薪30K,我想跟你聊聊!
|
存储 编译器 C语言
三年经验的C需要懂的问题
2013年3月写的文章。那会的工作主要是做一些通信设备上的底层软件,所以会深入的了解C的相关底层内容。这是那时候写的三年的C经验需要知道的事情。请不要问我这些问题的答案。
110 0
|
应用服务中间件 云计算
阿里云企业服务器限时活动三年三折(企业福利来袭)
阿里云服务器优惠精选 近期阿里云在服务器价格优惠方面频频发力,连续推出了多种服务器优惠活动,尤其是8月份推出的2折限时抢活动。 阿里云服务器爆款2折限时抢(2019年8月) 活动时间:2019年8月6日至2019年8月29日(爆款商品数量有限,抢完活动即停止)。
1927 0
|
API 定位技术 黑灰产治理
阿里云投了130多万奖金的大赛,你参加不?
第一届 API 大赛,阿里云践行了狭义的 API 经济。第一赛段出现了智能识别植物花卉、智能车辆识别、文档转长图/H5、图片鉴黄等优秀的 API 服务,现已成为阿里云 API 市场的合作伙伴。第二赛段涌现了很多基于 API 服务的优秀解决方案作品。
|
机器学习/深度学习 敏捷开发 安全
|
测试技术
三年工作总结
       时光如梭,来到佳杏已经整整三年的时间了,又到了每年总结的时候了,今年分两个方面来总结一下:         工作方面:       这一年的工作分以下三个阶段来讲:       出差前:       上半年的工作也挺忙碌的,在做完TE网站后,又进入了翻写Web的工作中去,我们在开发,客户在测试,有测试必然就会有问题要问,我记得当时一天差不多有一半的时间在回答客户提出的疑问,在这些回答问题的过程中,也让我对Web有了更深入的了解,和客户有了更顺畅的沟通,为后续工作的实施也打下了更坚实的基础。
1270 0

热门文章

最新文章