我眼中的QA——快乐并痛着

上一篇 / 下一篇  2008-01-30 15:27:58 / 个人分类:软件测试人生

记得杰拉尔德.温伯格曾经有过这么一句话:“夜深人静之时,头发斑白的老程序员会蜷缩在床上,欣赏一段精彩的子程序,或者苦思冥想一个绝妙的宏结构;而那些年少轻狂的程序员,则可能正在通过终端与别人聊得不亦乐乎。”如果这是个程序员的真实写照,那么什么又是QA的写照呢?

 

在来W之前,我对QA没有什么具体的概念,只知道是Quality Assurance的简称,做和测试有关的工作。经过这么一段培训,使我对QA有一个相对深入的了解。如果说软件是一摩天大厦的话,那么QA是它扎根在泥土里的根基;如果说软件一件完美的白壁,那么QA就该是清洁瑕疵的清洁剂;如果说软件是一把伞,那么QA就是支撑伞的伞骨。所以要想做一顿完美的软件大餐:软件质量保证必不可少。

 

   记得较久以前看过<<人件>>,书中提过黑衣团队这么一个概念,大意是一公司为了提高软件产品质量,将那些非常有才能的测试工程师组成一组,并给他们特权,让他们在软件产品上市之前进行最终的测试,这个团体逐渐形成自已的个性,也发展了一种渴望并期待发现产品缺陷的哲学,为了更加有个性,他们开始都穿上黑色的衣服,程序一旦有BUG他们就可怕地笑起来,他们的测试根本不是在支持开发人员,而是乐于将程序与程序员放到一种不是测试而是折磨的工序下面.他们还经常聚在一起研究出十分可怕的测试策略,他们一些变态的想法与测试方法让程序员望而生畏欲哭无泪,程序员越觉得糟糕,他们就越觉得高过隐与高兴.当然这是一种过为偏颇的描述,那么什么才是QA人员真正该有的品质和生活呢?作为一名QA人员,要一天到晚找BUG,也许久而久之,会形成惯性,吃饭会找菜里的BUG,走路会找路的BUG,看电影会找剪辑的BUG,甚至会把自己爱人脸上的痘痘都作为BUG来处理。从早晨到深夜他们的脑子里也许都是BUG。所以我认为作为测试人员还应该具有一种素质:

   1技术能力;

   作为一名测试工程师,不能仅仅从使用者的角度来测试软件产品,而且还要从技术的角度来设计测试用例,这里所说的技术包括基础的与专业的,基础方面我想应需要学习过以下的课程:软件技术基础、C语言、面向对象设计、C++、数据库理论、计算机网络技术、软件工程、数据结构与算法、离散数学等;专业方面应掌握:软件测试技术概论、测试管理、测试工具、软件质量管理CMMRUP等等。

   2)具有一定的编程经验;

   测试工程师有时候需要对源码进行检查,有时候也会从程序结构的角度来测试软件,有时候需要写一些自动测试的工具软件,有时候需要写测试脚本,显而易见,会写简单代码,能读懂源码对测试人员来说是必须的,而且如果有一定的编程经验,可以帮助你对软件开发过程有较深入的理解,从编程人员的角度来正确地评价;

   3)沟通能力;

   测试人员需要与很多人员进行沟通,项目经理、开发人员、客户、市场人员等都是测试人员经常吵架的对象,而且在面对不同人员,你需要不同的语气、不同的态度,与客户要谈得来,处处为客户着想,客户就是上帝,与上帝说话要和颜悦色,与开发人员交往就需要技巧了,测试人员与开发人员往往是不共戴天的,双方在心理上经常较劲,因此在说话的语气或讲述一个问题的出发点时特别要注意了。

   4)要有严谨、敢于承担责任、稳重的做事风格;

   其实学数学的人最适合做测试作,他们思维严密,什么问题都被他们考虑到,当然除了做事认真仔细,也要有承担责任的勇气,在漫长的项目实施过程中,或大或小的错误在所难免,我们可以原谅错误,但不喜欢狡辩,要敢于承认错误。

  5)具有怀疑与破坏的精神;

   测试人员不能总是以常规的思路来测试软件,要设计一些非常规的、相反的测试用例来不断地折磨软件产品,要破坏性地测试,并且不要停止你的怀疑。

  6)善于自我总结、自我督促;

 

应该说软件测试是一种即繁琐又枯燥无味的工作,做多了你会觉得似乎一成不变,对自已的能力没有提高,这时候就需要你作自我督促,并经常作一些阶段性的总结,新的技术新的方法新的工具层出不穷,要让自已跟上技术发展的脚步,善于将新技术新方法新工具应用到测试工作当中。

 

暂时想到这么多了,其实也已经够多了,其中有些东东可能对做任何事都适合,用培根老人家的话来说:注意你的思想,它会变成你的行动;注意你的行动,它会变成你的习惯;注意你的习惯,它会变成你的性格,而性格将决定你的命运。同样QA决定软件质量。

 

   QA的工作是任重而道远,QA人员的工作是快乐并痛着的:我们在无奈程序的缺陷的时候,同样感受这捕捉BUG带来的喜悦。明天是不可预知的未来,而生命的精彩就在于它的不可预知性,所以我们周围的许多人都喜欢在一些特定的日子去展望一下未来,我也一样,茶余饭后也喜欢给自已的明天描绘一下蓝图,以丰富的想象力将自已推向很高的位置,以抵抗现实生活中的平凡与平淡。对于未来可能的QA工作,我知道不可避免的有一些枯燥和乏味。那么我就用国内某报纸的宣言:以有趣对抗无趣!国内软件测试作为一个崭新的行业发展很快,我希望能以自己刻苦认真的工作态度,经过这一个阶段的培训,成为一名合格并优秀的QA工作人员。

TAG: 软件测试人生

快乐测试 引用 删除 liveware   /   2008-01-31 12:54:22
另外这只是我没有从事QA的时候写的一篇文章,可能会有一些漏洞,希望大家指出,但希望是善意和和蔼的
快乐测试 引用 删除 liveware   /   2008-01-31 12:52:57
回答:QA是质量保证,英文就是quality assurance,在CMMI中QA的主要工作是质量评审和产品评审,在ISO8402:1994中的定义是“为了提供足够的信任表明实体能够满足品质要求,而在品质管理体系中实施并根据需要进行证实的全部有计划和有系统的活动”。
QC是品质管理的意思,英文就是quality controller,主要按照QE指定的品质文件进行品质控制,是质量管理的一部分,致力于满足质量要求,qc是对人事、对物,直接致力于满足质量要求。
快乐测试 引用 删除 liveware   /   2008-01-31 12:49:52
软件质量当然不是由QA一个人决定了,而是由整个团队,包括QA,DEV,项目经理以及质量保证人员众多软件工作者的努力,而我始终认为QA最基本的责任是寻找BUG,提高软件质量,我没有说的那么偏激吧,呵呵
sophia52的个人空间 引用 删除 sophia52   /   2008-01-31 11:46:13
我是QA,但是从来不在软件里找bug,而是在软件开发生命周期里寻找bug,是对过程的质量保证。
Jasmine自留地 引用 删除 JasmineWu   /   2008-01-31 11:37:39
“同样QA决定软件质量”说的不错,但是你认为决定软件质量是测试的责任,是寻找Bug所控制?错了。决定软件质量是整个开发过程来决定的,是一个团队的责任。如果你作为QA却在不停的寻找Bug,那你将永远不会痛并快乐着。
Jasmine自留地 引用 删除 JasmineWu   /   2008-01-31 11:25:07
请问你分清楚QA和QC了嘛!
引用 删除 liveworking   /   2008-01-30 19:23:22
3
不错。赫赫!
 

评分:0

我来说两句

日历

« 2024-04-27  
 123456
78910111213
14151617181920
21222324252627
282930    

数据统计

  • 访问量: 19242
  • 日志数: 24
  • 图片数: 2
  • 建立时间: 2008-01-30
  • 更新时间: 2008-07-01

RSS订阅

Open Toolbar