转自:http://bbs.51testing.com/viewthread.php?tid=32081&extra=page%3D1%26amp%3Bfilter%3Ddigest
作者: 叶赫华
sinckyzhang@hotmail.com
自从本人从事软件测试培训以来,接触了太多的软件测试工程师;发觉从业者多数存在以下现象:
——刚刚毕业,踏入IT行业,不懂开发或开发经验薄弱,被迫或“亚被迫”从事软件测试工作;这心哪,瓦凉瓦凉的,一是根本不懂这工作是干嘛的,二是这工作不被很多公司重视,于是唏嘘的心里留下一声声叹息,蹒跚的人生步履留下一串串疑问…
——从事软件测试工作2年以上,由于公司不正规的测试流程,不标准的测试方法,因此,终日碌碌无为的点击按钮,某日拍脑袋突发奇想,测试出来一个bug,于是兴奋焉…终后没有新思路,于是没有发现新bug,于是不再兴奋;于是这两三年来,无论测试经验,还是测试技术、方法,包括理论,都无长进,于是郁闷甚至极度懊恼这几年来究竟做了些什么,明天又该何去何从呢?仰天长啸,却无语对穹苍…
——有过若干年开发经验,也许由于疲惫于终日编码,也许感觉软件测试是个朝阳领域,于是转做测试…但是好景不长,兴奋度持续一段时间,感觉自己的想法和思维方式与现实工作模式严重分歧,所谓天妒英才,空有一身本领,竟无用武之地!于是满腹的经纶化作无言的泪水,内心的豪情壮志也逐渐泯灭!接着开始逐渐适应了眼前的这份高级测试工程师的头衔和薪水,觉得干工作就是那么回事,何必计较那么多?虽未清晰构建余下二三十年的职业蓝图,但是也觉得起码自己比起很多同行,还算不赖;时间如流水般在烟圈与香水中消逝,吾生就是这样终日撞钟,铛——铛——铛——(好响!斑竹,猪头切一半给我,堵耳朵!)…
如果您作为一名测试工程师,看了上述三种状况,感觉自己不属于任何一种,那么只有两种可能:一是您是超级高手——您聪明绝顶,有着可以大展宏图的工作机会,又有满意的薪资,而且对这一行业无限热爱…反正对您来说,一切都太完美了,无懈可击!二呢,也许您是个漠视一切、目空一切的家伙,天塌下来当被盖的那种,反正什么言论对您都无懈可击!为此,本人建议此两种人不看本文,以免互相拍砖,破坏安定团结的大好局面^-^。
好啦,气氛活跃至此止,以下是严肃话题。
如果您是个积极进取、想在年轻时成就一番事业的人,那么请绝对相信这几句话:
——行行出状元!
——人生能有几回搏!
——错过这村,就没这店了!
为此,有必要说明下这几句俗语在软件测试行业的应用。首先,我们国内的很多软件测试从业者,是对软件开发不太擅长,但是又对软件行业又由衷的热爱,所以做了软件测试。但苦于读书时候没有学习过该方面知识,公司里又不一定有经验丰富的人员给予指导;因此,初涉软件测试的年轻朋友,大多做了半年、一年,感觉自身技能提高并不大,再加上整体行业发展缓慢,和网上的同行一交流,更是感觉软件测试没有希望,自己的前途黯淡无光!无奈只好终日吟唱“我的天是灰色,我的心是蓝色…”常言道,“男怕选错行,女怕嫁错郎!”——当然如今男女平等了,尤其软件测试从业者,男女比例基本上还算对等——那么,是不是软件测试行业真的没前途?软件测试工程师真是低人一等呢?当然不是,而且绝对不是!和软件开发领域相比,测试发展不过短短的10来年,而且主要是近三五年,所以整体行业不成熟也就情有可原。但是换句话说,乱世出英雄!如果你学软件开发,你知道作为一名合格开发工程师需要学习什么,知道开发工程师的待遇如何,知道开发工程发展前景如何;但是测试行业还没有发展到让你足够看清这些东西的阶段,所以在软件行业中对于喜欢挑战性职业的人,那么软件测试绝对是个好的突破口。各种统计数据表明,国内软件测试的人才缺口,未来几年将达到30到40万,所以对于朋友们来说,干这行还是有相当大的发展空间!但是,如何在众多的从业者中独树一帜、成为行业状元呢?这就需要技巧了!
再说第二方面。记得有句歌词叫“无怨无悔我走我路,走不尽天涯路…”!如今这个年代,各行各业竞争都很激烈,很难再有90年代初猛然蹦出一批暴发户的机会;因此,不管你因为什么选择了软件测试行业,都要无悔的走下去,只要有决心和毅力,终会成就正果!网上有篇文章叫《不做浮躁的人》,说的很好,我想我们确实该脚踏实地的做些事情,提高自己。抱怨这个行业只会让心情更加压抑,投入的做些具体的事情,待到自己有足够能力的时候,那么你就是推动这个行业发展的先驱;如此一举多得的事情,干吗不做呢!做踏实的人,不做抱怨的人,就算我们改变不了这个世界,也不要在这个世界里迷失自我。换句话说,年轻时候不卖力做点事情,老来方悔则一切晚矣,回首这一生,碌碌无为,可怜、可叹…这也是我要说的“人生能有几回博”。
唱了这么多高调,鼓舞一下大家的气势。那么,究竟如何在国内的软件测试行业现状下找到一条适合自己发展、并能快速提高职业技能的捷径呢?
我想应该从测试工程师的职业生涯定位谈起。从宏观意义讲,软件测试可以划分为以下三个方面:
●软件测试管理:测试流程管理、测试职业管理,测试技能方法管理等
●软件测试技术方法:根据软件测试的不同阶段周期、不同测试类型、不同软件类型等,深入研究软件测试的技术及方法
●软件测试自动化:自动化测试流程、自动化测试管理、自动化测试工具等
软件测试大致分为以上三类,每类可细化为更多子方面,例如第二类根据测试类型还可细化为功能测试、性能测试、安全测试等,根据测试方法可细化为黑盒测试、白盒测试、灰盒测试等。因此,软件测试工程师的职业发展方向,也大致可以如此粗略分类,并逐渐细化。这里,之所以将软件测试自动化单独列出来,是考虑到软件测试自动化既包括技术方法方面,又包含管理方面;更重要的是,软件测试自动化是软件测试领域无法逾越的发展阶段,随着应用软件程序规模的不断扩大,业务逻辑的不断复杂,以及从业者相互协作关系的日益重要,在软件的测试活动里适当使用自动化测试是非常必要的;并且,这种思维已经逐渐在国内外众多软件企业的测试领导者头脑中定型,他们也都意识到自动化测试的种种优势,并都或多或少希望购买和培训自动化测试工具。我们接触的很多大中型软件公司,包括外企,甚至早就在内部实施自动化测试,其中以使用mercury loadrunner、quicktestpro以及testdirector等工具的企业用户居多。
这里我想对喜欢自动化测试或立志成为自动化测试工程师的同行朋友说点个人想法,并结合mercury自动化测试工具,推荐些许学习方法,以供大家参考。
1)如果你有过开发经验,哪怕一点点,并且一直以来从事的是功能测试工作,那么推荐你学习自动化功能测试工具,并在此方面深入研究下去。该职位待遇一般是本地城市手工测试工程师的两倍左右,如果到达高级自动化测试工程师职位,从事自动化测试设计或测试框架的开发,待遇会更高。Mercury公司的winrunner和quicktestpro,是目前最主流的自动化功能测试工具,学习二者的方法也很简单,只要懂得c语言和VBscript即可。要深入学习,当然还要熟悉自动化功能测试的流程、管理及深层开发(包括测试框架、库函数等)。当前国内的应用软件开发,主流还是c/s与b/s两种架构,前者一般采用vb、vc、delphi、pb或java等开发,而winrunner工具对此类软件支持得比较好,很适合在这样的软件测试活动中采用自动化测试;后者一般是采用.net或j2ee技术开发的基于浏览器类软件,测试该类软件就非quicktestpro莫属了,它是mercury公司专门针对web程序的自动化测试工具。由于自动化功能测试工具品牌多,入门简单,因此,也是众多立志成为自动化测试工程师的首选。
2)作为一名软件测试从业者,我们知道执行性能测试,使用手工方式是无法想象的,因此借助工具来实现是非常必要的。目前业内存在两种现状:一是很多公司为了节约购买工具的成本或本身不要求软件性能指标而干脆不执行性能测试;二是由于性能测试是一门博大精深的技术工作,起步较高,因此这方面的高手不多,造成很多大中型软件企业或外企严重缺乏性能测试工程师!性能测试工程师待遇,一般是本地手工测试工程师的三倍甚至更多;我们接触的企业客户需求里,很多开价上万的性能测试工程师职位,竟然很难招到。随着软件开发技术越来越高深,业务逻辑越来越复杂,对软件的质量要求同样也会越来越高,软件一定会存在性能缺陷,因此对软件的性能要求也会随之而来;况且,软件的性能指标是软件用户手册里的重要组成部分,从正规测试流程上来说,凡是网络应用软件,不可不做性能测试!但是,从事性能测试的工程师,需要掌握太多的知识,包括计算机网络、数据库、操作系统、服务器等,而且还要有深厚的性能测试计划、设计、分析能力,以及丰富的性能测试经验,这些如果单靠个人的自行摸索,肯定是不太实际的。Mercury公司的loadrunner,是目前国际上性能测试工具的绝对领导者,具有百分之75的市场占有率;在国内,业界同行也都是提起性能测试首先想到loadrunner;因此loadrunner是在软件测试领域里立志成为一名合格的、优秀的性能测试工程师的朋友们的绝对首选。
3)如果你从来没有过软件开发经验,一直从事的只是手工测试,而且对软件测试的流程管理有着浓厚的兴趣,尤其对于那些从事测试的姑娘们!testdirector都听说吧?它集测试需求、测试用例、测试执行、软件缺陷管理于一身,将软件测试的整个流程统一管理,并支持异地分布式测试资源管理。和众多的软件测试同行接触,我们愈加发现一个问题,那就是我们很多的业界朋友,缺乏完整的、系统的软件测试知识体系,喜欢满足现状,而不去思考如何更加有效的实施软件测试活动,优化软件测试流程。针对这种现状,学习国外优秀的软件测试流程与管理经验,就理所当然了。而testdirector就是当前市场上最优秀的软件测试流程与资源管理的工具,目前本人还未见过一款测试管理工具集成如此众多功能(当然它的升级版quality center也是mercury公司的)。因此,掌握该款工具的使用,是立志成为软件测试管理者的一个非常必要的方面。
4)其他自动化测试领域,本文暂不讨论,例如白盒测试、特殊类型测试等。
那么,什么是开拓上述三种自动化测试职业的捷径呢?
答案很简单,如果你可以抛开世俗观念,考取mercury认证绝对是捷径!
下面我要向大家论证考取mercury认证的几大理由:
首先,mercury公司是软件质量保证工具开发商中的绝对领导者。下图是美国gartner公司的最新调查结果,位于坐标第一象限最右上角的就是mercury,图中还有其他我们熟知的几个公司,如IBM rational、compuware等,但是mercury长久以来,一直独占着软件测试工具提供商的领先地位,包括很多在华投资成立软件研发基地的外企,他们多数都是使用mercury测试工具。如果有了这个测试工具供应商的王者,那么,想要学习自动化测试工具,有什么理由不选择mercury呢? 其次,拿本人经验来说,有了mercury工具的使用经验,即便将来所在公司不使用该款工具,那么再学习其他的工具也会相当顺手,不费吹灰之力!为什么呢?举例来说,比如loadrunner的网络协议是本人所接触的性能测试工具中,支持最多的(相信很多人会同意我这个观点),如果将来你打算换用webload、silkperformer(当然它们的局限性要比loadrunner大的多)等性能测试工具,绝对不会比loadrunner还复杂;再比如拿quicktestpro和其他针对web程序的测试工具(如qawizard、XDE Tester等)相比,使用更是完全类似(不了解的人可以到本人blog查看我的文章去亲自对比)。至于testdirector,更是独一无二的功能强大的测试管理工具,没的选择!
再次,如果你的眼光足够长远,能够看清未来软件测试中自动化测试的重要地位,那么你更应该选择。回想当年的思科认证,刚刚推出时候价格昂贵,但是依然有那么多的人去考。为什么呢?因为有大量的需求!认证通过的人过后都认为这笔投入值得!类比软件测试行业,虽然现在还没到达计算机网络行业发展的那样成熟,但是未来的两三年后,如果有一天到处都是自动化测试的人才需求,到时再临时抱佛脚,相信你不会有什么优势了。任何认证都是初期最有价值的,如果抓住机会在推广初期考取,等到这个认证普遍到一定程度,你已经有了几年的实用经验,所以优势仍在、风采依然!顺便提醒一句,计算机行业发展是相当快的,回首过去这3年,软件测试行业一直是在飞速前进的。如果错过如今这段大好时光,没有及时为自己充电,那么如今你这位软件测试新手,到了3年以后,依然是新手,只是比那时刚毕业的热血青年显得沧桑了一些… 所谓岁月不等人咧,这也是我前边要说的“过了这村就没这店啦”…
然后,我要说明为什么要考取mercury认证,而不考其他认证。理由很简单,本人一直坚定的认为软件测试是实用性学科,是实践性工作,重理论而不强调理论,不断实践同时积累经验,遵守规范并不断创新!如果你为了眼前一个工作机会而花点小钱,获得一个什么机构颁发的资格认证,尤其那种完全理论性的、满篇题目都是“负载测试与压力测试什么区别”之类的恶心至极的题目的考试,那么恕我直言,你真是鼠目寸光!试问这样的认证有什么用呢?哪个企业的老板会笨到雇用一个纸上谈兵的军师呢?况且你这个军师也是“墙上芦苇,头重脚轻根底浅;山间竹笋,嘴尖皮厚腹中空”!坦诚的说一句,为了应付这样的考试花2个星期背那些题目,都不如下载个试用版loadrunner,对照网上的使用手册练习一下工具的使用!
最后,我要说一个实际的问题,那就是money了。相比当年的思科认证、微软认证的上万元报名费,mercury认证的三千多、六千多,还是相当便宜的。最直白的说一句,如果你的眼下薪资有3k,花一个月或两过月的薪水买个“国际认证”,那么这件事绝对值得!当然,考取mercury认证的真正核心价值,完全是顺应软件测试自动化的时代潮流,掌握最先进的软件测试自动化技术和管理方法。
最最后,再为有志于考取mercury认证的同行朋友给予一点点建议。
如果你是初涉软件测试行业的测试工程师,没有或很少接触过自动化测试,那么可以从mercury认证的CPE(certification product education)开始,该认证是mercury认证的汉化版,通过者可以掌握mercury认证工具的完全使用。
如果你具有了3个月以上的mercury工具使用经验,英文能力还不错,或者通过了CPE考试,那么可以直接考取CPS(certification product specialist),之后考取CPC(certification product consultant)。这两种考试都是英文,证书由美国mercury总部颁发,后者价值大于前者,考试难度也大于前者。并且,二者认证已经不限于工具本身的使用,而是结合了代表mercury公司作为软件测试行业龙头地位的先进、正规的自动化测试流程,其通过者也相当受大中型软件公司、尤其外企的青睐,当然这一需求也是我们在长期积累的企业客户关系中总结出来的。
详细mercury认证咨询,请登陆 www.51testing.com 查阅。
送上最后一句至理名言----“命运掌握在自己的手中”!如果你对一件事物犹豫不决的时候,那么请尝试学习《卡耐基成功之道》里介绍的方法,在纸上分别写下做此事的理由与不做此事的理由,如果此事的可行性是百分之五十一,那么就别再踌躇了,放心大胆的去做吧!时间会证实一切,因为你的确在进行着一件该行业前所未有的划时代式活动;记住,上帝宠爱勤奋的孩子,他会与你并行….(祝福ing)
(2005年7月5日于上海无空调的日子)
写在后面的话:决定写这篇文章的时候,已经知道没办法避免广告嫌疑了;因为本人就在51testing,而且国内仅此一家代理mercury认证!就算从职业道德上讲,也要维护本公司利益!不反对吧?再者,您真的认为本文就是个华丽的广告而已?^-^这是其一。
其二,注意我的措辞“如果你能屏弃对认证的世俗观念”,如果不能,对本文进行抨击也没有必要,怎么说我们也是同行!而且,我在文章最初也说了,如果你看了文章觉得让你血压升高,其实根本没必要看完的,对吧^-^
其三,我在文章强调考取该认证是个在测试行业快速成长和提高的快捷方式,不是必须!
其四,对于有朋友问的认证后有何用处,我觉得还是有很大好处的。在我们接触的众多企业客户里,还是很多大中型软件企业购买工具,实施自动化,但是想招一位自动化测试专家来在公司实施这件事,还是有很大难度,原因就是这样的人太少了。所以,我觉得如果你能经过该认证对自动化测试方面的系统培训并通过考试,面对此类人才需求,肯定还是有大展宏图的机会的(当然对此没兴趣的人,还是当我废话算了)。
sinckyzhang@hotmail.com
自从本人从事软件测试培训以来,接触了太多的软件测试工程师;发觉从业者多数存在以下现象:
——刚刚毕业,踏入IT行业,不懂开发或开发经验薄弱,被迫或“亚被迫”从事软件测试工作;这心哪,瓦凉瓦凉的,一是根本不懂这工作是干嘛的,二是这工作不被很多公司重视,于是唏嘘的心里留下一声声叹息,蹒跚的人生步履留下一串串疑问…
——从事软件测试工作2年以上,由于公司不正规的测试流程,不标准的测试方法,因此,终日碌碌无为的点击按钮,某日拍脑袋突发奇想,测试出来一个bug,于是兴奋焉…终后没有新思路,于是没有发现新bug,于是不再兴奋;于是这两三年来,无论测试经验,还是测试技术、方法,包括理论,都无长进,于是郁闷甚至极度懊恼这几年来究竟做了些什么,明天又该何去何从呢?仰天长啸,却无语对穹苍…
——有过若干年开发经验,也许由于疲惫于终日编码,也许感觉软件测试是个朝阳领域,于是转做测试…但是好景不长,兴奋度持续一段时间,感觉自己的想法和思维方式与现实工作模式严重分歧,所谓天妒英才,空有一身本领,竟无用武之地!于是满腹的经纶化作无言的泪水,内心的豪情壮志也逐渐泯灭!接着开始逐渐适应了眼前的这份高级测试工程师的头衔和薪水,觉得干工作就是那么回事,何必计较那么多?虽未清晰构建余下二三十年的职业蓝图,但是也觉得起码自己比起很多同行,还算不赖;时间如流水般在烟圈与香水中消逝,吾生就是这样终日撞钟,铛——铛——铛——(好响!斑竹,猪头切一半给我,堵耳朵!)…
如果您作为一名测试工程师,看了上述三种状况,感觉自己不属于任何一种,那么只有两种可能:一是您是超级高手——您聪明绝顶,有着可以大展宏图的工作机会,又有满意的薪资,而且对这一行业无限热爱…反正对您来说,一切都太完美了,无懈可击!二呢,也许您是个漠视一切、目空一切的家伙,天塌下来当被盖的那种,反正什么言论对您都无懈可击!为此,本人建议此两种人不看本文,以免互相拍砖,破坏安定团结的大好局面^-^。
好啦,气氛活跃至此止,以下是严肃话题。
如果您是个积极进取、想在年轻时成就一番事业的人,那么请绝对相信这几句话:
——行行出状元!
——人生能有几回搏!
——错过这村,就没这店了!
为此,有必要说明下这几句俗语在软件测试行业的应用。首先,我们国内的很多软件测试从业者,是对软件开发不太擅长,但是又对软件行业又由衷的热爱,所以做了软件测试。但苦于读书时候没有学习过该方面知识,公司里又不一定有经验丰富的人员给予指导;因此,初涉软件测试的年轻朋友,大多做了半年、一年,感觉自身技能提高并不大,再加上整体行业发展缓慢,和网上的同行一交流,更是感觉软件测试没有希望,自己的前途黯淡无光!无奈只好终日吟唱“我的天是灰色,我的心是蓝色…”常言道,“男怕选错行,女怕嫁错郎!”——当然如今男女平等了,尤其软件测试从业者,男女比例基本上还算对等——那么,是不是软件测试行业真的没前途?软件测试工程师真是低人一等呢?当然不是,而且绝对不是!和软件开发领域相比,测试发展不过短短的10来年,而且主要是近三五年,所以整体行业不成熟也就情有可原。但是换句话说,乱世出英雄!如果你学软件开发,你知道作为一名合格开发工程师需要学习什么,知道开发工程师的待遇如何,知道开发工程发展前景如何;但是测试行业还没有发展到让你足够看清这些东西的阶段,所以在软件行业中对于喜欢挑战性职业的人,那么软件测试绝对是个好的突破口。各种统计数据表明,国内软件测试的人才缺口,未来几年将达到30到40万,所以对于朋友们来说,干这行还是有相当大的发展空间!但是,如何在众多的从业者中独树一帜、成为行业状元呢?这就需要技巧了!
再说第二方面。记得有句歌词叫“无怨无悔我走我路,走不尽天涯路…”!如今这个年代,各行各业竞争都很激烈,很难再有90年代初猛然蹦出一批暴发户的机会;因此,不管你因为什么选择了软件测试行业,都要无悔的走下去,只要有决心和毅力,终会成就正果!网上有篇文章叫《不做浮躁的人》,说的很好,我想我们确实该脚踏实地的做些事情,提高自己。抱怨这个行业只会让心情更加压抑,投入的做些具体的事情,待到自己有足够能力的时候,那么你就是推动这个行业发展的先驱;如此一举多得的事情,干吗不做呢!做踏实的人,不做抱怨的人,就算我们改变不了这个世界,也不要在这个世界里迷失自我。换句话说,年轻时候不卖力做点事情,老来方悔则一切晚矣,回首这一生,碌碌无为,可怜、可叹…这也是我要说的“人生能有几回博”。
唱了这么多高调,鼓舞一下大家的气势。那么,究竟如何在国内的软件测试行业现状下找到一条适合自己发展、并能快速提高职业技能的捷径呢?
我想应该从测试工程师的职业生涯定位谈起。从宏观意义讲,软件测试可以划分为以下三个方面:
●软件测试管理:测试流程管理、测试职业管理,测试技能方法管理等
●软件测试技术方法:根据软件测试的不同阶段周期、不同测试类型、不同软件类型等,深入研究软件测试的技术及方法
●软件测试自动化:自动化测试流程、自动化测试管理、自动化测试工具等
软件测试大致分为以上三类,每类可细化为更多子方面,例如第二类根据测试类型还可细化为功能测试、性能测试、安全测试等,根据测试方法可细化为黑盒测试、白盒测试、灰盒测试等。因此,软件测试工程师的职业发展方向,也大致可以如此粗略分类,并逐渐细化。这里,之所以将软件测试自动化单独列出来,是考虑到软件测试自动化既包括技术方法方面,又包含管理方面;更重要的是,软件测试自动化是软件测试领域无法逾越的发展阶段,随着应用软件程序规模的不断扩大,业务逻辑的不断复杂,以及从业者相互协作关系的日益重要,在软件的测试活动里适当使用自动化测试是非常必要的;并且,这种思维已经逐渐在国内外众多软件企业的测试领导者头脑中定型,他们也都意识到自动化测试的种种优势,并都或多或少希望购买和培训自动化测试工具。我们接触的很多大中型软件公司,包括外企,甚至早就在内部实施自动化测试,其中以使用mercury loadrunner、quicktestpro以及testdirector等工具的企业用户居多。
这里我想对喜欢自动化测试或立志成为自动化测试工程师的同行朋友说点个人想法,并结合mercury自动化测试工具,推荐些许学习方法,以供大家参考。
1)如果你有过开发经验,哪怕一点点,并且一直以来从事的是功能测试工作,那么推荐你学习自动化功能测试工具,并在此方面深入研究下去。该职位待遇一般是本地城市手工测试工程师的两倍左右,如果到达高级自动化测试工程师职位,从事自动化测试设计或测试框架的开发,待遇会更高。Mercury公司的winrunner和quicktestpro,是目前最主流的自动化功能测试工具,学习二者的方法也很简单,只要懂得c语言和VBscript即可。要深入学习,当然还要熟悉自动化功能测试的流程、管理及深层开发(包括测试框架、库函数等)。当前国内的应用软件开发,主流还是c/s与b/s两种架构,前者一般采用vb、vc、delphi、pb或java等开发,而winrunner工具对此类软件支持得比较好,很适合在这样的软件测试活动中采用自动化测试;后者一般是采用.net或j2ee技术开发的基于浏览器类软件,测试该类软件就非quicktestpro莫属了,它是mercury公司专门针对web程序的自动化测试工具。由于自动化功能测试工具品牌多,入门简单,因此,也是众多立志成为自动化测试工程师的首选。
2)作为一名软件测试从业者,我们知道执行性能测试,使用手工方式是无法想象的,因此借助工具来实现是非常必要的。目前业内存在两种现状:一是很多公司为了节约购买工具的成本或本身不要求软件性能指标而干脆不执行性能测试;二是由于性能测试是一门博大精深的技术工作,起步较高,因此这方面的高手不多,造成很多大中型软件企业或外企严重缺乏性能测试工程师!性能测试工程师待遇,一般是本地手工测试工程师的三倍甚至更多;我们接触的企业客户需求里,很多开价上万的性能测试工程师职位,竟然很难招到。随着软件开发技术越来越高深,业务逻辑越来越复杂,对软件的质量要求同样也会越来越高,软件一定会存在性能缺陷,因此对软件的性能要求也会随之而来;况且,软件的性能指标是软件用户手册里的重要组成部分,从正规测试流程上来说,凡是网络应用软件,不可不做性能测试!但是,从事性能测试的工程师,需要掌握太多的知识,包括计算机网络、数据库、操作系统、服务器等,而且还要有深厚的性能测试计划、设计、分析能力,以及丰富的性能测试经验,这些如果单靠个人的自行摸索,肯定是不太实际的。Mercury公司的loadrunner,是目前国际上性能测试工具的绝对领导者,具有百分之75的市场占有率;在国内,业界同行也都是提起性能测试首先想到loadrunner;因此loadrunner是在软件测试领域里立志成为一名合格的、优秀的性能测试工程师的朋友们的绝对首选。
3)如果你从来没有过软件开发经验,一直从事的只是手工测试,而且对软件测试的流程管理有着浓厚的兴趣,尤其对于那些从事测试的姑娘们!testdirector都听说吧?它集测试需求、测试用例、测试执行、软件缺陷管理于一身,将软件测试的整个流程统一管理,并支持异地分布式测试资源管理。和众多的软件测试同行接触,我们愈加发现一个问题,那就是我们很多的业界朋友,缺乏完整的、系统的软件测试知识体系,喜欢满足现状,而不去思考如何更加有效的实施软件测试活动,优化软件测试流程。针对这种现状,学习国外优秀的软件测试流程与管理经验,就理所当然了。而testdirector就是当前市场上最优秀的软件测试流程与资源管理的工具,目前本人还未见过一款测试管理工具集成如此众多功能(当然它的升级版quality center也是mercury公司的)。因此,掌握该款工具的使用,是立志成为软件测试管理者的一个非常必要的方面。
4)其他自动化测试领域,本文暂不讨论,例如白盒测试、特殊类型测试等。
那么,什么是开拓上述三种自动化测试职业的捷径呢?
答案很简单,如果你可以抛开世俗观念,考取mercury认证绝对是捷径!
下面我要向大家论证考取mercury认证的几大理由:
首先,mercury公司是软件质量保证工具开发商中的绝对领导者。下图是美国gartner公司的最新调查结果,位于坐标第一象限最右上角的就是mercury,图中还有其他我们熟知的几个公司,如IBM rational、compuware等,但是mercury长久以来,一直独占着软件测试工具提供商的领先地位,包括很多在华投资成立软件研发基地的外企,他们多数都是使用mercury测试工具。如果有了这个测试工具供应商的王者,那么,想要学习自动化测试工具,有什么理由不选择mercury呢? 其次,拿本人经验来说,有了mercury工具的使用经验,即便将来所在公司不使用该款工具,那么再学习其他的工具也会相当顺手,不费吹灰之力!为什么呢?举例来说,比如loadrunner的网络协议是本人所接触的性能测试工具中,支持最多的(相信很多人会同意我这个观点),如果将来你打算换用webload、silkperformer(当然它们的局限性要比loadrunner大的多)等性能测试工具,绝对不会比loadrunner还复杂;再比如拿quicktestpro和其他针对web程序的测试工具(如qawizard、XDE Tester等)相比,使用更是完全类似(不了解的人可以到本人blog查看我的文章去亲自对比)。至于testdirector,更是独一无二的功能强大的测试管理工具,没的选择!
再次,如果你的眼光足够长远,能够看清未来软件测试中自动化测试的重要地位,那么你更应该选择。回想当年的思科认证,刚刚推出时候价格昂贵,但是依然有那么多的人去考。为什么呢?因为有大量的需求!认证通过的人过后都认为这笔投入值得!类比软件测试行业,虽然现在还没到达计算机网络行业发展的那样成熟,但是未来的两三年后,如果有一天到处都是自动化测试的人才需求,到时再临时抱佛脚,相信你不会有什么优势了。任何认证都是初期最有价值的,如果抓住机会在推广初期考取,等到这个认证普遍到一定程度,你已经有了几年的实用经验,所以优势仍在、风采依然!顺便提醒一句,计算机行业发展是相当快的,回首过去这3年,软件测试行业一直是在飞速前进的。如果错过如今这段大好时光,没有及时为自己充电,那么如今你这位软件测试新手,到了3年以后,依然是新手,只是比那时刚毕业的热血青年显得沧桑了一些… 所谓岁月不等人咧,这也是我前边要说的“过了这村就没这店啦”…
然后,我要说明为什么要考取mercury认证,而不考其他认证。理由很简单,本人一直坚定的认为软件测试是实用性学科,是实践性工作,重理论而不强调理论,不断实践同时积累经验,遵守规范并不断创新!如果你为了眼前一个工作机会而花点小钱,获得一个什么机构颁发的资格认证,尤其那种完全理论性的、满篇题目都是“负载测试与压力测试什么区别”之类的恶心至极的题目的考试,那么恕我直言,你真是鼠目寸光!试问这样的认证有什么用呢?哪个企业的老板会笨到雇用一个纸上谈兵的军师呢?况且你这个军师也是“墙上芦苇,头重脚轻根底浅;山间竹笋,嘴尖皮厚腹中空”!坦诚的说一句,为了应付这样的考试花2个星期背那些题目,都不如下载个试用版loadrunner,对照网上的使用手册练习一下工具的使用!
最后,我要说一个实际的问题,那就是money了。相比当年的思科认证、微软认证的上万元报名费,mercury认证的三千多、六千多,还是相当便宜的。最直白的说一句,如果你的眼下薪资有3k,花一个月或两过月的薪水买个“国际认证”,那么这件事绝对值得!当然,考取mercury认证的真正核心价值,完全是顺应软件测试自动化的时代潮流,掌握最先进的软件测试自动化技术和管理方法。
最最后,再为有志于考取mercury认证的同行朋友给予一点点建议。
如果你是初涉软件测试行业的测试工程师,没有或很少接触过自动化测试,那么可以从mercury认证的CPE(certification product education)开始,该认证是mercury认证的汉化版,通过者可以掌握mercury认证工具的完全使用。
如果你具有了3个月以上的mercury工具使用经验,英文能力还不错,或者通过了CPE考试,那么可以直接考取CPS(certification product specialist),之后考取CPC(certification product consultant)。这两种考试都是英文,证书由美国mercury总部颁发,后者价值大于前者,考试难度也大于前者。并且,二者认证已经不限于工具本身的使用,而是结合了代表mercury公司作为软件测试行业龙头地位的先进、正规的自动化测试流程,其通过者也相当受大中型软件公司、尤其外企的青睐,当然这一需求也是我们在长期积累的企业客户关系中总结出来的。
详细mercury认证咨询,请登陆 www.51testing.com 查阅。
送上最后一句至理名言----“命运掌握在自己的手中”!如果你对一件事物犹豫不决的时候,那么请尝试学习《卡耐基成功之道》里介绍的方法,在纸上分别写下做此事的理由与不做此事的理由,如果此事的可行性是百分之五十一,那么就别再踌躇了,放心大胆的去做吧!时间会证实一切,因为你的确在进行着一件该行业前所未有的划时代式活动;记住,上帝宠爱勤奋的孩子,他会与你并行….(祝福ing)
(2005年7月5日于上海无空调的日子)
写在后面的话:决定写这篇文章的时候,已经知道没办法避免广告嫌疑了;因为本人就在51testing,而且国内仅此一家代理mercury认证!就算从职业道德上讲,也要维护本公司利益!不反对吧?再者,您真的认为本文就是个华丽的广告而已?^-^这是其一。
其二,注意我的措辞“如果你能屏弃对认证的世俗观念”,如果不能,对本文进行抨击也没有必要,怎么说我们也是同行!而且,我在文章最初也说了,如果你看了文章觉得让你血压升高,其实根本没必要看完的,对吧^-^
其三,我在文章强调考取该认证是个在测试行业快速成长和提高的快捷方式,不是必须!
其四,对于有朋友问的认证后有何用处,我觉得还是有很大好处的。在我们接触的众多企业客户里,还是很多大中型软件企业购买工具,实施自动化,但是想招一位自动化测试专家来在公司实施这件事,还是有很大难度,原因就是这样的人太少了。所以,我觉得如果你能经过该认证对自动化测试方面的系统培训并通过考试,面对此类人才需求,肯定还是有大展宏图的机会的(当然对此没兴趣的人,还是当我废话算了)。