秋阳的软件测试专栏

   :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理 ::
  65 随笔 :: 0 文章 :: 127 评论 :: 0 Trackbacks

  ‘任何人都可以做软件测试的工作,就是点点鼠标,提提bug嘛’。哦,也熟悉,是吧?确实有不少人是这样认为的,甚至是带领一个技术团队的经理,他可能表面没这样说,但是行为却体现出这样的想法,这些人觉得软件测试没有什么技术含量,如果换做让开发工程师来测试,或者随便找几个员工,或者学校的学生,甚至拉过一个路人甲,都可以做测试工作。对,可以做,但是你想得到什么质量的工作成果呢?专业的测试人员得到的效果,和随机测试的效果之间差别非常大。那么测试的专业性体现在哪里?我认为主要有以下几点:
  1.不同的角度。在一个团队里,开发经理、需求人员、设计人员、编码人员,大家的思路,都是在考虑如何构建一个系统,但是,测试人员,对,只有测试人员,他们是在思考如何能够‘破坏’系统。这是一个非常有价值的角度,只有在开发过程中这些可能遭受破坏的地方被发现,被修复,软件投入实际使用后,才会避免在客户的环境中发生这些失败的情况。所以,不同的角度是测试人员的一个重要的,也是团队中一个独特的价值所在,可能很多人没有意识到这一点。
  2.广泛的覆盖。覆盖率是软件测试中的一个重要概念,我觉得可能仅次于前面提到的角度的重要性。测试人员会根据软件系统将来承诺运行的环境,硬件的、软件的、第三方的,以及功能方面的,性能方面的,安全性方面的等等需求,设计测试用例,验证软件是否能够如预期的正常应对。如果不是经过专门训练的工程师,测试覆盖的设计,肯定会有问题。
  3.系统集成的问题。有责任心的编码人员,会尽力确保自己负责的模块功能正确(当然这也只是主观的期望,实际上不出错是不可能的),但是如果涉及到自己模块与其他人模块之间的交互,往往就会出问题,这是由系统集成的特殊性决定的,主观认真会起作用,但问题还是要发生,而测试人员会比较容易的发现这类问题。
  4.质量文化的建立。测试工程师在团队中,有助于建立一种质量文化,使大家能够从反面思考一些问题。另外,包括全程测试、尽早测试的提倡,单元测试的指导,等等,对于提高软件质量都会发挥极大作用。

  软件测试人员,能看到整个系统的全貌,可能是对系统要做什么最了解的人,甚至比产品的负责人还要了解(我指的是广度上,具体特性的深度上往往会欠缺一些)。从测试团队那里,你能及时的得到一个系统当前状况的切片,对于防止项目失控,看清当前情况与目标的差距,是非常重要的的信息。

posted on 2010-12-15 13:02 qiuyangzh 阅读(970) 评论(1)  编辑 收藏 引用 所属分类: 06 测试管理/软件过程

评论

# re: 傲慢与偏见——‘任何人都可以做软件测试的工作’ 2011-01-04 20:48 xiongli
为什么深度上要欠缺一些呢
就是应该广度上和深度上都nb一些  回复  更多评论
  

只有注册用户登录后才能发表评论。