无论做什么事情,要做得更快更好,是要求具备一些素质的
, 有些素质是天生的,比如性格、偏好等等,而有些素质是
后天可以培养的,比如技术、语言、思维、道德等等,人们
常说:性格决定命运。这话让我倍感郁闷,如果真是这样,
我想我们大多程序员还真是苦命一条,遥想漫漫前程,如
果有一天写出来的代码比万里长城还长,而我们还在为生
活或爱情而忙碌奔波焦头烂额,那还真是一个不理想的下
场,或许我们有必要反思一下我们的性格,看能不能往更
好的方向发展,让我们的技术与思想为我们带来一个更加
美好的未来,呵呵......
还是别胡扯太远,回到软件测试吧。在测试工作中人是最
重要也是最有价值的资源(其实在别的工作中也是的,呵
呵),一个优秀的、积极的测试小组是保证软件质量的关
键所在,然而在国内我们经常看到一些令人担忧的现象,
很多公司喜欢让那些经验最少的新手、效率低下的开发者
或不适合干其他工作的人去做测试工作,这是一种目光短浅
的行为,这种行为往往会带来更严重的后果,傻瓜都知道
产品质量对于一个企业的重要性,就如同我买的那个抽油
烟机,我想这辈子再也不会去买那个企业所研发的任何产
品了,让客户有这种心理是企业很大的失败,所以笔者认
为软件企业需要端正态度,将软件产品的质量问题放在第
一位,让中国软件早日腾飞!
阿蒙研究软件测试有一些日子了,对测试人员的管理也有
一定的经验,现在就来谈一谈一个好的测试工程师所应具
备的素质。
(1)技术能力;
这一点不必多说,作为一名测试工程师,不能仅仅从使用者
的角度来测试软件产品,而且还要从技术的角度来设计测试
用例,这里所说的技术包括基础的与专业的,基础方面我想
应需要学习过以下的课程:软件技术基础、C语言、面向对
象设计、C++、数据库理论、计算机网络技术、软件工程、
数据结构与算法、离散数学等;专业方面应掌握:软件测试
技术概论、测试管理、测试工具、软件质量管理、CMM、RUP
等等。看看,你还缺少什么,赶快学习吧。
(2)具有一定的编程经验;
测试工程师有时候需要对源码进行检查,有时候也会从程
序结构的角度来测试软件,有时候需要写一些自动测试的
工具软件,有时候需要写测试脚本,显而易见,会写简单
代码,能读懂源码对测试人员来说是必须的,而且如果有
一定的编程经验,可以帮助你对软件开发过程有较深入的
理解,从编程人员的角度来正确地评价;但这一点在国内
大部分公司里面是很难实现的,因为这意味着测试人员的
salary要高于开发人员,很多BOSS会想不通的,而且也没
那么高的觉悟,呵呵。
(3)沟通能力;
测试人员需要与很多人员进行沟通,项目经理、开发人员、
客户、市场人员等都是测试人员经常吵架的对象,而且在
面对不同人员,你需要不同的语气、不同的态度,与客户
要谈得来,处处为客户着想,客户就是上帝,与上帝说话
要和颜悦色,与开发人员交往就需要技巧了,测试人员与
开发人员往往是不共戴天的,双方在心理上经常较劲,因
此在说话的语气或讲述一个问题的出发点时特别要注意了。
(4)要有严谨、敢于承担责任、稳重的做事风格;
其实学数学的人最适合做测试作,他们思惟严密,什么问
题都被他们考虑到,当然除了做事认真仔细,也要有承担
责任的勇气,在漫长的项目实施过程中,或大或小的错误
在所难免,我们可以原谅错误,但不喜欢狡辩,要敢于承
认错误。
(5)具有怀疑与破坏的精神;
测试人员不能总是以常规的思路来测试软件,要设计一些
非常规的、相反的测试用例来不断地折磨软件产品,要破坏
性地测试,并且不要停止你的怀疑。
(6)善于自我总结、自我督促;
应该说软件测试是一种即繁琐又枯燥无味的工作,做多了
你会觉得似乎一成不变,对自已的能力没有提高,这时候
就需要你作自我督促,并经常作一些阶段性的总结,新的
技术新的方法新的工具层出不穷,要让自已跟上技术发展
的脚步,善于将新技术新方法新工具应用到测试工作当中。
暂时想到这么多了,其实也已经够多了,其中有些东东可
能对做任何事都适合,笔者经验有限,有想不到的地方,
希望朋友们多多指教,最后用培根老人家的话来结束这篇
文章:注意你的思想,它会变成你的行动;注意你的行动
,它会变成你的习惯;注意你的习惯,它会变成你的性格
,而性格将决定你的命运。
待续 软件测试之我见---发展篇
更多阿蒙文章请到 http://www.vchome.net