从这几点谈谈软件测试的重要性

来源:网络发布时间:2010-07-31

  软件测试的意义在于:

  软件测试在软件研制中的作用

  软件测试的意义在于:

  a.     发现软件错误;

  b.     有效定义和实现软件成分由低层到高层的组装过程;

  c.     验证软件是否满足任务书和系统定义文档所规定的技术要求;

  d.     为软件质量模型的建立提供依据。

  软件测试的目的

  软件测试的目的,第一是确认软件的质量,其一方面是确认软件做了你所期望的事情(Do the right thing),另一方面是确认软件以正确的方式来做了这个事件(Do it right)。

  第二是提供信息,比如提供给开发人员或程序经理的反馈信息,为风险评估所准备的信息。

  第三软件测试不仅是在测试软件产品的本身,而且还包括软件开发的过程。如果一个软件产品开发完成之后发现了很多问题,这说明此软件开发过程很可能是有缺陷的。因此软件测试的第三个目的是保证整个软件开发过程是高质量的。

  软件质量是由几个方面来衡量的:一、在正确的时间用正确的的方法把一个工作做正确(Doing the right things right at the right time.)。二、符合一些应用标准的要求,比如不同国家的用户不同的操作习惯和要求,项目工程中的可维护性、可测试性等要求。三、质量本身就是软件达到了最开始所设定的要求,而代码的优美或精巧的技巧并不代表软件的高质量(Quality is defined as conformance to requirements, not as “goodness” or “elegance”.)。四、质量也代表着它符合客户的需要(Quality also means “meet customer needs”.)。作为软件测试这个行业,最重要的一件事就是从客户的需求出发,从客户的角度去看产品,客户会怎么去使用这个产品,使用过程中会遇到什么样的问题。只有这些问题都解决了,软件产品的质量才可以说是上去了。

  测试人员在软件开发过程中的任务:

  1、寻找Bug;

  2、避免软件开发过程中的缺陷;

  3、衡量软件的品质;

  4、关注用户的需求。

  总的目标是:确保软件的质量。

  软件测试,对于测试人员来说就是为了找bug,也是一切;对于开发人员来说,良好的设计也意味着有良好的测试用例.测试表面上看是更多的开销,但实现却是赚了大便宜.

  都说全局变量不是个好东西.但是,就在几个月之前,我就做过一个软件使用了一定的全局变量,那时感觉真的很爽,都不知道给我省了多少麻烦,节约了多少时间.几个月后的现在,我就没有那么幸运了,看着别人做的一个工程,也就用了一个全局变量(是个 struct),为了把模块分离开来.我不得不花大量的时间来看懂它的实现.真的挺痛苦的.从中我总结一条经验:

  规模较大的工程尽量少用全局变量.

  想明白后又发现这些道理都很简单,大学时老师们都说过N遍了,但是亲身体会真的不一样.