六年测试工作的思考

发表于:2007-8-15 12:00

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:未知    来源:网络转载

  前言

  在公司已经干了6年的测试了,干测试经理也5年了。眼看就要离开奋战了6年的岗位,还真有点儿舍不得。但没办法,该离开的时候就要离开,光伤感是没有用的。正好趁此机会把自己6年来一直想写但没写的东西写出来。这篇文件纯粹是对自己工作的回顾。由于时间仓促基本上是想到什么些什么,有点儿乱,也请大家多多担待了。只要还有些人能从中找到些儿同感,或从中得到一些帮助,一些经验,我就知足了。

  什么是测试

  首先我要谈谈什么是测试。相信好多测试人员跟我一样,来公司之前也没有从事过任何测试工作。对于测试都是从零开始的。也有好多人跟我一样,从各种书上或是培训中得到过有关测试的各种定义。但不知道大家有没有净下心思考一下。什么是测试。在公司公司测试工作的定义是什么,测试的工作范围是什么。

  测试的定义根据测试技术的发展,历经了3个主要的阶段。第一个阶段,认为测试就是找产品中的bug。第二个阶段,除了找bug以外,又增加测试是对软件质量的度量这一概念。第三个阶段,明确了测试是指为了度量和提高被测试软件的质量,对测试件进行工程设计,使用和维护的并发生命周期。注意其中提高的测试件,其主要是与软件这个词进行对应。明确测试也是一种开发过程。他的工作成果就是测试件,好像平时我们所谓的测试案例、测试脚本等等都可以称为测试件。然后使用测试件去度量和提高被测试软件的质量。

  目前,在中国大部分软件企业,尤其是中小型的软件企业还停留在第一阶段。我个人觉得公司稍微好一点儿,处于一、二阶段之间。因为我们平时做的最多的一件事,还是找bug。至于测试案例和测试脚本等等,只占用工作量的很小一部分。而且我看不到大家在平时的测试工作中是完全依据测试案例进行测试的。目前测试案例等工作更多的成为了一种形式上的产物。从有些部分所有产品的测试案例在一个下午就能评审完就能看得出来。

  说到这里顺便在谈一句测试计划。目前的测试计划是作为产品计划的一部分。先明确大概发版时间,然后是各个阶段的里程碑,其中提交集成的里程碑是死的。开发需要的时间就是那么多,剩下倒推的时间就是测试的时间。这样定出的计划是否能够起到计划的作用就不好说了。现在的计划更多的是罗列联调测试的各种内容,至于时间,不说也罢。所以从中也可以开出公司的测试也就停留在一、二阶段之间。

  明确了公司测试的定义(个人理解),也就不难理解公司给测试人员的定位了。在测试人员中经常流传的一种说法就是国外测试人员的地位多么多么的高,开发就是coding。咱们公司开发比测试多拿多少多少,测试人员地位是开发序列中最低的。大家也要看看人家公司测试人员的素质,测试在开发过程中的重要性。再看看自己所从事的工作,就是找软件的bug。当然我也个人认为有经验极其丰富的测试人员对产品的贡献比开发和需求大。明确了这些,心里也就能少点儿不平衡感。

  测试方法的思考

  说完个人对测试含义的理解,再说说个人对测试方案的一些思考。

  个人认为在公司6年,测试方法没有什么提高。主要还是以黑盒测试为主。中间也曾经引入过各种各种工具,但测试人员真正用起来的也就是robot。而且robot主要是进行回归测试,再加上一些人并没有真正认识到其价值,应用范围也极其有限。对整体测试效率的提升影响不大。所以目前的测试方案还主要是以需求为依据的黑盒测试。至于什么极限值了,成对测试法等等,都是建立在黑盒测试的基础上,而且从我一来公司就有相应的测试项目,只不过没有明确概念而已。

  另一个说个人觉得6年来公司测试方法没有什么提高的原因是,6年前测试是以人为主,靠得是测试人员的经验,对产品的熟悉程度,对业务的理解程度。6年后测试还是以人为主,人就是测试的主体,产品质量的保证。还没有过渡到测试案例就是测试的主体,测试案例的完整性是产品质量的保证。只要测试还是以人为本,我觉得测试的效率就不会有太大提高,产品质量的信心来源也是对相关测试人员的信任。

  我个人觉得以黑盒测试为主要的测试方法没错,而且也比较符合目前公司的测试现状。但一定要注意各种经验的总结、积累,更重要的是共享。虽然目前测试案例在测试工作过程中的地位不重要,但其毕竟是编写者的经验积累。汇总起来也是一笔可观的财富。可现在如果有人问我850的测试方案在那里,其中还有多大比例能够用在现在的产品中,在现在的测试工作中有多少以前的案例能够复用。其他产品中的测试案例中有多少是关于接口功能,有多少我可以借鉴。我不知道,这也是自己工作不到位的地方。所以我要说的作为黑盒测试为主要的测试方法,一定要注意测试经验的总结和共享。

  而且我认为一个人如果黑盒测试能做到位,做到最后培养的是一种测试的感觉。测到最后,产品你一看就能知道那里可能有问题,那里应该没什么问题。这样有重点地投入测试力量可以收到事半功倍的效果。可这是需要大量测试经验的积累的,不是我告诉你,你就知道的能力。在此前提上加强测试人员之间的横向沟通,形成经验贡献。可以较快的培养测试人员的测试感觉。

  最为测试经验积累的另一个重要方法就是加强对测试案例的要求和管理。每版测试案例不仅要包括新增功能,还需要包括上一版本中继承的案例,修改或删除上版案例中变更的内容。从而形成一份完整的关于产品所有功能点、接口、升级、年结等等各方面的测试案例。真正做到测试案例是测试的主体,从而提高测试效率,提高产品质量。

  测试工具的概念和作用

  测试工具,什么叫测试工具。我认为任何能提高你测试效率的工具都可以称之为测试工具。不仅仅指robot或是loadrunner这类专门的测试工具,也不仅仅指使用各种编程工具编写的测试工具。像总账工具、eai等,即使只是帮我们导入一些常用档案,也可以节约我们的测试时间也可以称之为测试工具。

  我个人现在公司测试在测试工具开发上还很不足。在公司里一提起测试工具,大家第一个想到的可能就是robot。即使是robot应用的也不够深入。大家经常认为robot主要录制gui的脚本,跟产品界面联系紧密。每次回放成功率不高,各个版本间脚本复用率也较低。而且每次总是以各种理由将脚本录制放到最后,经常就不了了之了。最后阶段的测试任务实在太紧。我想说的是robot的应用虽然有各种各样的局限性,但其毕竟提高了测试效率。比如说安装盘验证,使用robot验证,每天都可以节约一半以上的验证时间,这就是效率。认识了它的好处,才能想尽办法解决或避免在robot使用中的各种问题。以前同事有一套robot脚本规范就很好,使用后不仅提高了回放成功率,而且回放中断后,继续回放也变得很容易。所以说使用robot后,想100%回放成功不可能,想不再进行脚本的调试也不可能。认识这两个问题后,就需要加强robot使用经验的总结和共享,有针对性地加强robot使用问题的研究,每版测试开始时针对上版robot脚本的复用问题进行研究。这样才能用好它,真得使之成为一个工具,而不是一项任务。

  一种工具也不是万能,有许多针对产品特性的测试工具。只能自己开发,大家应该积极提需求。凡是认为有可能提高测试效率的工具需求都可以提。能从网上找到现成的工具解决需求更好。不能,如果是普遍性的需求,可以专门进行开发。因为咱们产品的特性,每版间测试工具的复用度很大。从长远看就是节约开发成本,缩短开发周期。

  在现阶段加大测试工具的适用范围和力度,用好各种测试工具,可能是提高整体测试效率最快最好的方法。但一定要加大推广的力度。否则有了好的工具,没人用或用不起来也是没用。

  如何看待各种规则和执行

  可能大家觉得平时开发过程中有好多规则、制度。这些除了一些自己公司内根据各种情况制定的外,大部分都是跟cmm体系相关的一些规则。可以说是已经被许多软件公司验证过,可以提高开发和测试效率的规则。但好多人觉得起没有什么用,就是在浪费时间。总是以一种完成任务或是应付差事的心情去做。我觉得大家之所以觉得其没用,恰恰就是由于你去做这件事的动机不对。总以应付差事的心情去做,你就不可能真正理解这么做的目的,这样做能给你带来什么好处,你从中会得到什么收益。所以我个人认为,既然有规则,不管是公司自创的或是借鉴其他标准,都是为了解决开发过程中的问题,为了提高开发的效率,保证产品质量。也许这些规则中有这样那样的不合理,但只有你认真地去做了,才能发现其中的不妥之处,才能改进,才能更有助于你的工作。

  执行也是我觉得在工作中需要进一步加强的环节。许多规则就是因为执行力度不足,才容易让一些人找到空子,应付了事。但怎样加强执行力度,还是一个需要大家一起进行探讨的问题。

相关文章

6年软件测试工作的思考之二

《2023软件测试行业现状调查报告》独家发布~

精彩评论

  • lq8756141
    2009-5-12 19:36:40

    学习了

  • zhicl
    2007-9-11 10:46:16

    以前我们一个老大说过,只有不合适的将军没有不合适的兵,有点偏激,但确实只有会带兵的将军才能打胜战

  • sleepygirl
    2007-8-31 16:47:24

    虽然进这个行业只有半年,但是感触到的和楼主的很像,测试过程几乎完全是人为的,也不是很规范。唉!

  • majere_ma
    2007-8-28 10:52:16

    算下来自己从毕业到现在也作了两年得测试了,开始是游戏测试,现在是软件测试,也是越做越失落.自己得辛劳得成果,最后荣誉总在被人身上.不被重视.我同事说了这么一句话我很赞同,让你测试,测试成功发布后,却连自己得一个友情出演得份都没有.真想离开这个行业,但是一直没下定决心....

  • kellyxie
    2007-8-28 08:57:13

    看得出来在测试这块是做得挺多的.但你不觉得在同一家工作做到这个份上,有点太浪费自己.我跳了2次槽,每次跳槽后的总结整是不一样.每次都可以弥补我之前的不足,感觉是挺兴幸的.只是money少了很多,不适合就走,做得潇洒.而且凭我2年的经验,我觉得我得到比楼主还多.

  • liuhang19830409
    2007-8-27 15:37:53

    作者写的很真实,看的出来曾经付出了很多,我想,测试是一个比较新的职业,目前全国的水平还比较低,技能也较差,都会把测试想的是找BUG,对测试的职业也会有些不尊重,我们也可以和开发相比,开发经历了多少年才有今天,所以测试的规范化还需要一些时间,更需要我们这些测试人的努力,不要自暴自弃,要向好的方面看,还是有很多公司愿意去改进的!

  • bhbhobby
    2007-8-27 14:08:39

    做了三年了 越做越失落!从事这个行业没有什么大的前途!
    测试 = 低待遇 + 低地位 + 没有成果(再好的孩子也是别人的、测试充其量就是个保姆)

  • cooltianhai
    2007-8-27 10:36:21

    嗯,感触很深,向你学习!

  • hadywei
    2007-8-21 10:56:00

    貌似以前看过,这个是lz的原作吗

  • ennyly
    2007-8-21 09:36:56

    楼主有个观点是“一些规则。可以说是已经被许多软件公司验证过,可以提高开发和测试效率的规则。但好多人觉得起没有什么用,就是在浪费时间。总是以一种完成任务或是应付差事的心情去做。”,人之常情,谁有心情去面对没什么作用而又烦琐的事情,请理解下属的工作心情,写代码或做测试,都有个成就感在里面!

  • juanyu1984
    2007-8-18 19:39:22

    哎~看得我懵懵懂懂的,不太理解~~~~

  • zys3497
    2007-8-18 12:50:52

    我现在就徘徊在楼主与muerte的观点之间,想做出点成就来,就要有不给自己留后路的打算,试问又有几个人能做到这点,是不是就应该老老实实的找个高薪挣钱呢?
    希望能听到更多的人对此提出自己的看法

  • jifang
    2007-8-17 11:13:06

    写了这么多,辛苦了老兄!

  • xiaogu
    2007-8-16 21:28:04

    自动化测试真的很重要啊

  • 兔兔快跑
    2007-8-16 20:26:25

    呵呵,顶个,说的和我公司测试情况一样,自动化测试做的少之又少,完全靠人的测试。

  • wangs
    2007-8-16 17:14:12

    测试人员的素质,测试团队领导的性格决定了这个测试团队的主体思想,与做事方法.
    测试团队,在不同的公司中起的做用也不同,好的计划并不一定适用,正规的测试流程也并不一定能提高公司的业绩。毕竟有着规范测试流程的公司并不是很多,也是受到了公司本身各方面条件的影响.规划成为一个难题.

  • bluelightmm
    2007-8-16 11:37:43

    想真正做点事确实是很难的呀  尤其在目前这样一个大环境下

  • xiaoxue_ren_ren
    2007-8-16 10:04:08

    很佩服作者的精神,其实我觉得你做测试比较负责,很到位呀。想问一下,作者辞职过来,还打算继续做测试这个行业还是转其他行业呢?

  • lifr
    2007-8-16 09:17:47

    佩服老兄在一家公司呆了6年.
    但从你的描述来看,这家公司对于测试并没有规范的流程.我建议你到外资软件公司,最好中型到大型的, 去体验一下,学习学习他们的经验.

  • muerte
    2007-8-15 18:14:27

    嘿嘿,感觉有点乱,不过,还是很真实的,其实,国内的测试就这样,想做点什么,可是什么也没有做出来,还是老老实实的去找个高薪挣钱·

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号