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

|