负暄琐话

我的email: rot47('649@ 6(hF+`hd"w=92vhG{>}G3"@l M >:>6?4@56 \F')

囧囧ID:g9yuayon
[修改头像]
786536次访问,排名36好友9人,关注者11
g9yuayon的文章
原创 239 篇
翻译 4 篇
转载 48 篇
评论 794 篇
g9的公告
最近评论
xingranliuyun:囧囧囧rz。这难道是给脑残大学脑抽系汗语颜文学专业同学们出的毕业大补考的考试题?
GlacJAY:呃,那个讨论看不到了。被河蟹了?
Googol:这些更多是民众发泄的途经吧,作为对政府部门不作为的嘲讽。
andrewleung:说得好,支持!
alextooter:ff可是用的完全的自己内存管理。。

最近ff3非常好,值得试试看。
订阅我的博客
XML聚合  FeedSky
订阅到鲜果
订阅到Google
订阅到抓虾
订阅到BlogLines
订阅到Yahoo
订阅到GouGou
订阅到飞鸽
订阅到Rojo
订阅到newsgator
订阅到netvibes
文章分类
收藏
    相册
    旅游
    计算机科学
    Lambda the Ultimate
    软件开发
    Reddit编程专栏(RSS)
    正在读的书
    存档

    原创 软件测试的职业前景

    新一篇: 见过贪婪的,没见过这么贪婪的

    从闫辉的博客看到的文章:http://blog.csdn.net/superyan/archive/2006/05/22/748921.aspx。其实我的评价很简单:不是人中龙,不要做测试。普通人做测试没有前途。原因也很简单。让我们做个小测验:10秒钟,快!举出你的10个偶像。里面有靠做测试扬名立万的么?要求太高了?那好,举出10个你最常读的博客。里面有做测试的么?我的必读博客里倒有两个是专做测试的。可惜他们的文章都和开发有关。换句话说。他们的专业不是测试。他们是程序员,而他们的业务领域是测试。不过这个话题我们押后再说。这个测验没有普遍意义?那好,让我再举一点某业界龙头公司的例子。该公司有大概50个院士。猜猜多少个是搞测试的?让俺告诉你:1个。就这个也是特殊情况。该院士负责某个大型操作系统的系统测试,对系统了解的程度已经到了客户每次来访都点名要见他的地步。所以这个例子旁证了不要轻易做测试的论断。院士以下是Distinguished Engineer(DE),DE以下是Senior Technical Staff Member(STSM)。该公司一个2000来人的研发实验室里10来个STSM,四五个DE,其中有多少是测试出身?答案是0。STSM以下是Senior Developer(SE)。那个实验室一个部门两百多号人,其中测试部门测试人员近百。里面非经理的SE有多少?答案还是0!再看一个数据。那个部门的测试分部过去三年的专利数加起来还没有一个组一年的专利多。质量就更不用提了。而且要知道,这个公司已经非常重视测试。他们的测试人员工资也好头衔也好,都和开发人员一个等级。公司有专门的测试部门。测试部门有充足的预算。测试有严格的流程。每年公司都有针对测试人员的名目繁多的奖励。公司里外的政策都宣传测试人员有前途,测试人员和开发人员同等重要。但那又如何?同样做技术,搞测试的获得提升的机会就比做开发的小得多。你怎么和别人比?发表的文章比人少,得到的专利比人少,抛头露面的机会比人少,讨论产品规划设计的机会比人少!现实摆在面前:如果普通人有志于技术,做测试就是死路一条。

    大部分人做的测试工作都是黑盒测试。项目一紧,大部分工作时间都花在单调重复的鼠标敲击上了。经理们不会认为你的工作有什么难度。既然没有难度,为什么要表彰你的工作?是,测试里仍然有挑战性。问题是,你得在做完手头的工作后,花额外的时间,才有机会去做那些“有挑战性的工作”。以前我在测试部门时,人人受提拔的机会都来自于完成所谓的“扩展项目”。这难道不讽刺么?做完手头的测试工作是你的天职。要想得到表彰?做与测试无关的项目吧!我进公司那年年末测试部门里得到最高评价的测试员根本就没有做测试。他负责开发我们的自动化框架。你完全可以想象这件事对我们士气的打击:原来要想挣表现,就不要做测试!第二年测试人员为抢”扩展项目“不惜耽误测试,不用我说大家也能猜到吧?

    有人或许说,找到隐蔽的错误不是件容易事,也需要天赋,也需要努力。非常正确!可惜,经理们不懂。他们也没法衡量你的绩效。程序错误少了,是程序员开发得力。软件发布后没有多少错误,是你该做的。软件发布后有很多错误,你他妈怎么做的?换言之,没人知道你到底为发现一个错误付出了多少。没人关心一个错误的重要性。这也正常:当错误被发现,这个错误也就不再神秘。人们也就想当然地认为这个错误很容易被发现。既然很容易被发现,那关你测试员什么事呢?

    做测试还想保持技术上的精进就更不容易。专家是在征服挑战,学习教训的过程中反复磨练出来的。当你把青春抛洒在反复敲击鼠标左键的时候,你的同事正在为一个算法问题殚精竭虑,正在为一个设计问题激烈讨论。当你的汗水滴在千篇一律的测试文档上的时候,你的同事正在为一门新技术的规格书字斟句酌。长此以往,谁会站在技术的领跑线上?而我当测试员时听过的最大的谎言就是“程序员只知道某个具体模块的实现,而测试员和多个模块打交道,有大局观”。谎言,不折不扣的谎言!做了程序员就知道,测试人员知道的你都得知道。他们不知道的,你也得知道。既然当程序员能学到更多东西,为什么要做测试员?

    不要以为我瞧不起测试。恰恰相反,我觉得测试事关软件成败,至关重要。我只想说,现在少有公司能给予测试人员正确的待遇。衡量测试员工作比衡量程序员的工作更加困难(大概这也是为什么startup里测试员反而又前途吧,因为他们的工作表现能被相对容易地公正评价)。许多优秀的测试人员看不到光明的前途,纷纷离开测试部门,甚至转行,遭受损失的只是公司。

    写下这点小小的感想,也算纪念我做测试那一年半的酸甜苦辣。

    发表于 @ 2006年05月22日 13:54:00|评论(loading...)|编辑

    旧一篇: 博客推荐:good math, bad math之Lambda算子简介

    评论

    #kk 发表于2006-05-23 14:11:00  IP: 210.76.122.*
    你把白盒和黑盒概念颠倒了

    从事测试工作1年半,就轻易下结论,有点早

    我做测试4年了

    觉得测试还是大有可为的,因为目前还没有一本“testing bible”
    #g9yuayon 发表于2006-05-23 22:12:00  IP: 69.192.26.*
    呵呵,的确搞反了。已更正。谢谢。测试技术上也许大有可为。不过我说的是做技术的职业前途(请注意,是做技术。测试出来的管理高层还是不少),就受现实(尤其是政治)的制约了。就算有可为,也时不我待。人生有多少个1年半啊?转到开发后,马上就开始接触产品功能设计,需求收集,产品架构,软件设计,和大量编码,每天都有新挑战,每年都有专利申请,每年都有文章发表。这些是在做测试时很难得到的。当然,我说的是普通人的情况。高手们能逾越现实的壁垒,在任何地方大展拳脚,不在这篇文章讨论之列。

    我觉得在开发部门,开发是投资,而测试是负债。所以你做开发时,在不耽误进度的前提下,每一点小小的改进都被人重视。而做测试就不一样了。谁关心你能做多少测试?做再多的测试用例,上面都认为是理所当然。谁关心你的测试代码是不是干净漂亮?大部分时候,测试用语言都是垃圾,比如SilkPerformer的BDL。谁关心你用什么算法?反正大部分时间也不用算法。谁关心你用什么架构?我见过一个获得专利的测试架构。里面一个测试源代码可以有几十个全局变量。这种垃圾都可以获得专利,何况普通的测试?

    说到测试的书。经典还是不少的。难道开发方面就有所谓的圣经么?
    #g9 发表于2006-05-25 22:39:00  IP: 199.246.40.*
    说得很好!如果做测试的都是这个态度就让人欣慰了。态度决定我们的命运。做测试也好,做开发也好,有快乐心,有好奇心,有进取心,多半能做得不错。如果你喜欢测试,不妨全力以赴。我的确是从开发的角度看测试,用程序员的职业要求把开发和测试做比较,从而得出对测试前景的悲观(或者说偏激)看法。这样做的确不太公平。其实如果谁要这么说开发,我多半会做不会出类似的驳斥。不过话说回来,测试的现状的确不怎么样。我说“不是人中龙,不要做测试”不是贬低这门行业,而是强调搞技术的人做测试要付出比程序员更多的努力,品尝更多的艰辛。我也没说测试是单单点击鼠标(不然我不会转载这篇文章:http://blog.csdn.net/g9yuayon/archive/2005/10/05/495340.aspx),而是说测试里很多看似简单的工作不能带给测试员公道的回报。如果面对这样的现实,仍然对测试充满热情,仍然看到灿烂的职业前景,那恭喜你,你已经有了“人中龙”的潜质。
    至于扬名立万么。呵呵,这当然不是我们最求的目标,但我相信它是我们水平提高后的副产品。换句话说,我在用自己的标准评价测试:专利,经手产品,文章,技术深度,同行评价。这些只是是我看重,认为能让自己变得重要的东西。
    #Tester 发表于2006-05-25 18:28:00  IP: 202.115.139.*
    今天早上一来就看到群里的消息中有你Blog的地址,谁知一上来就看到你关于测试的一些感想,这无形中给我的头脑带来了不小的冲击,我也想就事论事一番,如有过激之处还请海涵。

    本人做测试的时间不长,去年实习的时间中真实算起来只有三个月的时间,但是正是这三个月带给我的行动力以及影响力的程度是以前任何一个时间段都无法达到的。我很庆幸,我实习的公司是一个很重视测试的公司,她让初入社会的我得到了前所未有的体验,更庆幸的是当初我选择的实习工种是测试。以前的我也是一心想做开发的,但很庆幸我在实习的时候就找到了一份很合乎我性格的职业,于是从那时开始我就转向了测试。

    我知道在有些人看来,测试不是一份能为自己赢得过多荣誉的职业。导师知道我想做测试后就曾经给我说,测试没有开发有成就感,开发人员在看到自己的产品面向市场提供给用户使用的时候,那份成就感是测试人员所无法体会的。而且有很多人认为测试比开发“档次”低,所以有很多人不屑于做测试,在有些人眼里看来,某人之所以去做测试是因为他做不了开发。这些思想目前真的存在于许多人的头脑中。我对导师说,我喜欢测试,测试是一份非常具有挑战性的职业,而且对测试人员的要求也是非常高的,我不觉得做测试没有成就感,相反,我觉得做测试很有成就感,而这份成就感开发人员不一定能体会得到。

    在你的文章开头,你认为“不是人中龙,不要做测试”。个人觉得你有点以偏概全,那我想反问一句,如果不是人中龙,那是不是意味着就可以做开发了呢?不知道这对开发来说是否有贬低之嫌。就社会来说,目前的我只是一介学生,是一个不折不扣的新人,但是我觉得一个人在择业的时候如果单以估计该职业能否让你“扬名立万”来进行判断的话,这对自己来说是很不负责任的表现。诚然,每个人都想得到别的人的认同,都想让别人知道你存在的价值,都想让自己的价值得到最大程度的体现,但是每个人的性格在很大程度上早就决定了你适合做什么而不适合做什么。如果一个人选择做技术开发,如果他的出发点只是因为这份职业能让他有更多的机会“扬名立万”,而不是这份职业能给他带来激发他自身潜力的源动力,那这个人的前途是让人为之担忧的,至少我为他感到担忧。同样,如果一个人选择做测试,如果他的出发点只是因为测试比较简单,只是因为他觉得他自己做不了开发,而不是这份职业能给他带来激发他自身潜力的源动力,那这个人的前途我也为他感到担忧,在很大程度上我更为测试这一职业本身的发展感到担忧,因为我个人觉得同一份职业如果不同的人来从事的话,他带给别的不从事这一职业的人的感想可以是完全不一样的。很抱歉,可能我这里说得有点偏激了。但一个人能做好开发工作,但不代表他能做好测试这一工作,反之亦然。

    测试,哪怕是黑盒测试,哪怕是项目紧张的时候,也不只是简单单调的鼠标敲击而已,测试同样也是得靠头脑的!测试如同开发一样也是一份需要得到尊重的工作。如果你做的是开发,如果你所在的公司对于开发并不是很重视,如果经理们也认为你的工作没有什么难度,那既然没有难度,人家为什么要表彰你的工作呢?人家也会觉得开发出产品是你的天职,如果在某一技术难题上你没有攻克,那是不是也会有人觉得你的本职工作没有做好呢?如果你所处的环境是像上面说的一样的话,那我想不是做测试还是做开发的问题了,而是管理体制的问题了。

    对于测试来说,如果你是一个新人,那你有责任努力学习测试技术、与人沟通的能力并不断的完善你的人格品性。如果你已不是一个新人了,那你除了需要跟新人做一样的事情外,你还有责任用你的行动来影响别人对测试的态度
    #Tester 发表于2006-05-28 09:04:00  IP: 202.115.139.*
    你说的那些情况的确是普遍的现象,测试人员在很多时候都没有得到公正的待遇。据我所知,在有些公司里开发人员的工资是测试人员的两倍,甚至更多。试想当测试人员在看到公司内部如此的“贫富差距”的时候,各中滋味有谁能体会?

    每个人都有自己认定的目标,而这目标可能会随着你所经历的一些的事情而进行适当的调整,这都是难免的,因为在某一时刻你可能会觉得那个目标才是最好的,但是当测试人员定下自己将在测试领域有所作为的目标后,不得不承认他所面临的将会是来自各方的诸多压力。首先是来自于自身的压力,最现实的比如,在某一阶段里他可能因为现实的原因得到的回报比开发少很多,而每个人都希望自己的付出能得到恰当的回报,那他怎么来克服自身的这些想法?其次是来自于诸多对测试不太了解的朋友们的压力,对手工的黑盒测试来说,可能在某些朋友看来就是敲敲键盘,动动鼠标就搞定了,他们不清楚测试人员在敲键盘、动鼠标之前进行过哪些思考和前期工作,并且在得到实际结果后的分析情况,既然无法了解,那试问如何能从那些朋友那里得到公证的评价?其实想说服一个人改变他的想法在很多情况下是很难的,因为每个人或多或少在对待某一件事,对待某一个人的时候都有先入为主的思想,不是吗?在有些时候作为测试人员可能会倍感孤独,其实很不想用这个词汇,但是我无法不正视这一点。我也知道要理解某一件事、某一个人,那你得首先正视它(他),关于它(他)好的坏的都要正视,而愿不愿意深陷其中就需要各位自己的判断了。

    面对目前看似比较残酷的现实,可能在开发人员拥有美丽的太阳的时候,我们作为测试人员只能得到一点点余晖,但是我还是坚信经过测试人员的努力,当用实力对软件的品质保证做出贡献的时候,我们也拥有我们自己的美丽的太阳,当我们的所作所为得到大多数人的认可的时候,当看到产品顺利交付并得到用户的肯定的时候,那也是我们测试人员向成功又迈进了一步。满腔热血唱出青春无悔,测试人员本身就可以跟开发人员一样能拥有美好的前景,套用一句别人的话“道路是曲折的,但前途是光明的”。测试人员们,A ZA!

    最后,想送一首张韶涵的《隐形的翅膀》给众多测试人员一起分享:

    每一次/都在徘徊、孤单中坚强/每一次/就算很受伤/也不闪泪光/我知道/我一直有双隐形的翅膀/带我飞/飞过绝望/不去想/他们拥有美丽的太阳/我看见/每天的夕阳也会有变化/我知道/我一直有双隐形的翅膀/带我飞/给我希望/我终于看到/所有梦想都开花/追逐的年轻/歌声多嘹亮/我终于翱翔/用心凝望不害怕/哪里会有风/就飞多远吧。
    #hjzhang 发表于2006-06-01 16:53:00  IP: 219.232.51.*
    前面举例明显偏颇。测试和开发不是同期发展的,截止到目前为止,测试的理论、方法都没有开发成熟,所以在这个行业里面肯定开发的猛人感觉多。
    而且开发一般带有创造性质,而测试带有破坏性质。创造性质的人才会知名一些,所以我们看书的时候会看作者是谁,不会看编辑校对是什么人。

    以你的例子,说50个院士只有一个搞测试的,所以测试必须牛人才能做。其实50个院士,我估摸着都是50以上的岁数吧,那30多岁的牛人是不是现在就不应该考虑提高学术水平,扎到院士当中呢?

    hehe,就是没事干回复一下。

    至于测试现在国内的现状,和行业发展有关系,现在制造业有哪个敢说,我们公司没有质量监督的,只要造出来就是符合质量要求的。呵呵,早晚软件也会向这个靠拢的。

    测试没有想象中那么牛,开发也一样。都只是软件开发当中的一个环节而已。
    #hjzhang 发表于2006-06-01 16:53:00  IP: 219.232.51.*
    前面举例明显偏颇。测试和开发不是同期发展的,截止到目前为止,测试的理论、方法都没有开发成熟,所以在这个行业里面肯定开发的猛人感觉多。
    而且开发一般带有创造性质,而测试带有破坏性质。创造性质的人才会知名一些,所以我们看书的时候会看作者是谁,不会看编辑校对是什么人。

    以你的例子,说50个院士只有一个搞测试的,所以测试必须牛人才能做。其实50个院士,我估摸着都是50以上的岁数吧,那30多岁的牛人是不是现在就不应该考虑提高学术水平,扎到院士当中呢?

    hehe,就是没事干回复一下。

    至于测试现在国内的现状,和行业发展有关系,现在制造业有哪个敢说,我们公司没有质量监督的,只要造出来就是符合质量要求的。呵呵,早晚软件也会向这个靠拢的。

    测试没有想象中那么牛,开发也一样。都只是软件开发当中的一个环节而已。
    #hjzhang 发表于2006-06-01 16:54:00  IP: 219.232.51.*
    多点了一下,替我删一个吧,顺便这个也删掉。
    发表评论  


    当前用户设置只有注册用户才能发表评论。如果你没有登录,请点击登录
    Csdn Blog version 3.1a
    Copyright © g9