一提起“软件测试”,总有不少人很反感,因为在他们得印象当中,做测试的就是整天没事干,专挑别人毛病的;甚至还有不少程序员就感觉“测试和开发”人员是对立的……
其实不然,软件测试是在软件开发过程中是和开发人员相互合作,不存在对立关系的,他也是一个独立的部门。测试就是在一个程序被交付到最终 用户手上之前找出程序中的错误为目的活动。
测试是检查产品的质量,而不是检查开发人员的质量;因此,对立的关系是不存在的。
而测试的目的,也不是简单狭义的找出Bug,进行测试又分为两种立场:从用户的角度出发,就是希望通过软件测试来充分暴露软件中存在的问题和缺陷,从而考虑是否可以接受该产品;从开发者的角度出发,就是希望通过测试来表明软件产品不存在错误,已经正确地实现了用户的需求,从而确立人们对软件质量的信心。中国软件测评中心的测试原则也是如此。
一个软件的开发往往需要大量的人力和和时间,因此成功的测试就是要以最少的人力和时间,系统的找出软件种潜在的各种错误和缺陷,它能够证明软件的功能和性能与需求是否相符合,而实施测试所收集到的测试结果数据也为可靠性分析提供了依据。但是测试不能表明软件中不存在错误,它只能表明尽可能的找出软件中存在错误。
在这里,附带的说一下软件质量缺陷的原因,主要是一下几方面的原因:
1.缺乏或者没有进行沟通
2.软件复杂度
3.编程错误
4.不断变更的需求
5.时间的压力
6.人员的自大
7.缺乏文档的代码
8.软件开发工具
另外,一个好的测试的属性是指:
1. 一个好的测试发现错误的可能性很高
2. 一个好的测试并不冗余
3. 一个好的测试应该是“最佳品种”
4. 一个好的测试既不会太简单,也不会太复杂
随着生社会的发展,用户对软件质量的要求也更高了,已不是简单的看功能的实现了,而是越来越重视软件是否经过了测试和测试的结果。能经受测试的软件,才是一个成功的软件、优秀的软件。因此,一定要重视软件测试!
posted on 2006-06-05 17:43
白静 阅读(301)
评论(1) 编辑 收藏 所属分类:
技术