【风雨八年】为功能测试正名,写给广大软件测试同行

发表于:2012-5-02 11:30

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

 作者:清风随雨    来源:51Testing软件测试论坛

  首先,恭祝51testing生日快乐,感谢您一直是所有软件测试人员成长的摇篮和精神支柱!

  从刚刚接触软件测试工作,到现在已经有十年之久。

  十年前,毕业后就进入了一家软件公司,经理分配的任务就是测试软件,发现有错的地方就告诉他。这是我对软件测试工作的第一印象,就是看系统是否报错,各个功能按钮是否能够正确响应。

  两年后,由于公司经营不善,我被公司裁员。其理由是:技术总监认为没有必要设置软件测试工程师的岗位。因此,竞岗时,我无岗可竟。

  恰巧,当时中国软件评测中心跟省科技厅联合培训,于是,我就第一次真正认识到什么是软件测试。同时,也知道了51testing和测试时代这些软件测试交流的专业平台。

  之后,我就入职另一家软件公司。当时,入职的职务是测试员,但公司的测试基本上和我第一次接触软件测试工作时的水平差不多。于是,我就从最基础的缺陷管理测试用例、测试流程、测试规范、测试标准等等,一步步的将公司的测试规范建立起来,而我也因此成为了公司的测试部门经理。从测试员到测试部门经理,在这短短的八个月的时间里,可以说我取得的每一次进步,掌握的每一种知识,均来源于51testing和QQ群。可以说,如果没有这些交流平台,就不可能有系统化学习的机会。

  为了挑战质量要求更高的项目,我离开了家乡,加入了现在的团队。这是一支由150多名技术人员组成的团队,其中,测试人员有20人。我入职的职务是测试组长,两周后任质量经理,八个月后任测试总监。从各种测试标准的制定到测试规范的建立,再到测试体系的建立;从团队战略发展方向到团队梯队建设再到测试知识库的筹建;从技术培训到团队成员职业规划;三年来 ,我和这支团队一起成长。

  从业近十年,参与的项目十余个,其中千万级以上的项目三个。项目涉及MIS、HIS、GIS、OA、三维应用、BI、SOA、应用系统集成等诸多方向,其测试类型包括:功能测试性能测试、接口测试。

  说了这么多,大家一定以为我写跑题了,其实不然。之所以描述自己的成长经历,是想告诉大家我的体会来源于我的经历。

  无论是在各种测试论坛上,各个测试QQ群中,还是在招聘时的应聘人员。我经常会遇到这种问题,相信大多数同行们也都遇到过。

  1、做功能测试有前途么?
  2、做黑盒测试有前途么?
  3、我现在只能做功能测试,但我今后一定要做自动化测试、性能测试!
  4、你们公司上自动化了么?
  5、我会QTP、LR。

  广大测试同行在投简历时,也一定常见这种职位要求:要求熟练掌握LR、QTP、QC、TD、Bugzilla等工具之一。

  咱们先说说后面这种情况。一个公司在选择测试人员时,竟然将这些测试工具作为选人标准之一。我想问这样招聘的公司几个问题:

  1、贵公司的产品适合上自动化么?
  2、贵公司的管理水平达到上自动化的要求了么?
  3、LR能完全支撑贵公司产品的性能测试么?
  4、贵公司一年能有多少项目需要做性能测试?
  5、缺陷管理工具每个公司用的都不太一样,其缺陷管理流程是需要结合公司管理流程的,这种工具即便人家不会或没用过此类工具,你就不能培训么?很难么?

  除非公司是在招聘对口的技术人才,否则,我只能认为这家公司的测试水平真的不咋的。甚至于写招聘要求的人,压根就不懂测试。

  咱们再来说说关于同行们对功能测试的误解。好多人都认为功能测试门槛低,没技术含量,好像提起来做功能测试就低人一等似得。如果你有这种意识,我只能说:兄弟,多干几年吧。我承认功能测试的入门门槛是低,但我不认为功能测试没技术含量。我甚至认为一个能把功能测试做好的测试人员,才是一个合格的质量负责人!

  大家先别拍我,让我们来谈一下什么是软件测试。既然大家都是同行,相信大家都认同:“通过测试手段,在用户使用前,发现缺陷。”以及“软件中不可能没有缺陷。”这两句话。不错,测试是不能被穷举的,因此,我们也不可能发现软件中所有的缺陷。因此,我们是不是能够换句话说:“软件测试是通过一系列的测试手段,证明软件具备一定的质量。”

  如果你认同这一观点,那么我们再来谈谈功能测试的范围。

  狭义的功能测试:这点点,那点点,看看能不能正确打开页面、程序会不会崩溃、功能是不是能够正确实现等等。这也就是大家之所以认为功能测试没技术含量的根本原因。因为这种测试也得叫它功能测试。

  广义的功能测试:各种业务逻辑是否已正确实现?各种业务约束是否正确实现?各类特殊的数据是否能够正确处理?软件的容错机制如何?数据的完整性、唯一性、正确性是否已经通过测试?系统及数据的安全性是否已通过测试?软件的易用性是否满足用户的需要?等等等等。功能测试所包含的范围实在是太大。

  我没有贬低其他测试专业的意思,但有几点是需要说明的。随着各行各业对信息化建设的需求日益提高,其软件的规模和复杂度正在翻倍的提高。而功能测试的难度也随软件的复杂度逐日提高。而相对来说,白盒测试依旧关注的是单个函数的代码逻辑以及异常的处理;自动化测试仅仅提高的是测试执行效率,测试质量依然是要靠功能测试用例来保障;性能测试其实关注的是业务发生的场景和如何生成负载和收集监控指标,其变化就是需要监控的对象更多,影响因素更为复杂。

  面对规模庞大,业务逻辑愈来愈复杂的系统,保障其软件质量,就需要广大功能测试人员具备更强的逻辑分析、设计能力;掌握更多的业务知识及技术。同时,由于当前国内绝大多数企业对测试工作的认知程度不足,大多数测试工作都是在时间紧、任务重的条件下完成的。那么,在有限的条件下,如何能够提高软件产品的质量,即:如何证明软件具备了一定的质量。将是所有软件质量负责人首先考虑的问题。

  在这种前提下,我认为,一个好的功能测试工程师应具备丰富的行业知识(专家级),极强的逻辑分析能力,精于业务架构、测试架构、数据库、测试用例的设计。公司的产品质量,取决于测试负责人的组织能力及团队成员的技术能力,因此,功能测试工程师在测试团队中不可或缺。

  无论是白盒测试、自动化测试、性能测试,都是不同的测试手段,但功能测试却是产品质量的根本保障! 请广大正在从事功能测试的同行们,正视自己的工作,认真对待,不要气馁或轻视自己的工作。将自己手头上的事做好,人生的每一段经历都将是你的财富!

  原帖地址:http://bbs.51testing.com/thread-551469-1-1.html

版权声明:本文由会员清风随雨首发于51Testing软件测试论坛八周年征文活动。

原创作品,转载时请务必以超链接形式标明本文原始出处、作者信息和本声明,否则将追究法律责任。

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

精彩评论

  • 测试_周云杰
    2013-5-16 15:26:31

    许多人认为功能测试的门槛低,是因为只看到功能测试中测试执行的这一环节。其实功能测试的功力,体现在 测试设计、疑难问题追踪 这两方面。这两个技术点一方面要求测试人员要非常熟悉业务或者说需求,另一方面要求测试人员掌握尽可能多的测试技术,是功能测试人员能够体现实力的环节,也是功能测试人员需要不断突破提升的环节

  • xdf1030
    2013-2-01 22:31:49

    可以有的公司就卡着一些他们根本就用不到的技术,没办法,他们是主宰着,前提是你要这个工作

  • wuminru_01
    2013-1-16 14:58:01

    同意楼主的看法,我们小地方没有测试的用武之地啊,根本不在乎测试,即便是上市公司

  • piaobo628
    2012-12-18 17:11:12

    这个问题一直困挠着我,受教了。

  • zhaobinhs
    2012-12-12 17:33:01

    我也一直想写一篇关于功能测试的文章,不知道从什么开头 你这篇文章真正的诠释了功能测试

  • naonao0510
    2012-11-29 16:01:16

    受教了

  • l-li-jie
    2012-11-20 10:48:08

    找到功能测试的动力了,呵呵,感谢楼主的分享。

  • vaniling
    2012-9-26 16:23:29

    受教了,我是测试新人。现在在做基本的功能测试,看了这篇文章给自己的信心多了。

  • 284815762@qq.co
    2012-9-26 10:12:57

    我刚做2个月功能测试,该文章写出了功能测试者的心声,这也是一番鼓励。功能测试作为最基础的测试,我们要不断提升自己的测试技术。

  • pqxx
    2012-8-29 10:05:53

    新手,受益匪浅

  • Jane70301
    2012-7-03 16:17:14

    这番文章看的心里暖暖的。。。
    我想作者所谓的功能测试也不仅仅是黑盒功能测试,是远高于这个层面的。

  • heaven7253
    2012-7-02 12:09:16

    非常非常好

  • zhaoliqiang
    2012-5-31 17:12:43

    写出了功能测试人员的心声

  • 清风随雨
    2012-5-28 17:26:01

    回答9554528
            我承认业务知识的重要性,以及对个人、对工作的影响。但我不认为跳槽之后就是一无所有。
        测试最重要的是什么?不是任何具体的受局限的事物,而是测试思想,分析方法,设计能力。测试不同于其他,测试思想是可以移植的,可以应用到各个行业。如果你掌握了这些,就可以说你可以进入任何行业。因为你差的仅仅是业务知识,现在应该还没有哪个行业的业务知识复杂到让一个有多年工作经验的人在短期内还不能上手工作。当你完全掌握该行业的业务知识时,你仍然在你应该在的岗位上。
        我个人的QQ:18902508.

关注51Testing

联系我们

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

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

沪ICP备05003035号

沪公网安备 31010102002173号