软件测试就是为了验证软件功能实现的是否正确
什么是软件测试 为了保证软件的质量和可靠性,应力求在分析、设计等各个开发阶段结束前,对软件进行严格技术评审。
但由于人们能力的局限性,审查不能发现所有的错误。
而且在编码阶段还会引进大量的错误。
这些错误和缺陷如果遗留到软件交付投入运行之时,终将会暴露出来。
但到那时,不仅改正这些错误的代价更高,而且往往造成很恶劣的后果。
软件测试就是在软件投入运行前,对软件需求分析、设计规格说明和编码的最终复审,是软件质量保证的关键步骤。
如果给软件测试下定义,可以这样讲:软件测试是为了发现错误而执行程序的过程。
或者说,软件测试是根据软件开发各阶段的规格说明和程序的内部结构而精心设计的一批测试用例(即输入一些数据而得到其预期的结果),并利用这些测试用例去运行程序,以发现程序错误的过程。
软件测试在软件生存期中横跨两个阶段:通常在编写出每一个模块之后就对它做必要的测试(称为单元测试)。
编码与单元测试属于软件生存期中的同一个阶段。
在结束这个阶段之后,对软件系统还要进行各种终合测试,这是软件生存期的另一个阶段,即测试阶段,通常由专门的测试人员承担这项工作。
大量统计资料表明,软件测试的工作量往往占软件开发总工作量的40%以上,在极端情况,测试那种关系人的生命安全的软件所花费的成本,可能相当于软件工程其他开发步骤总成本的三倍到五倍。
因此,必须高度重视软件测试工作,绝不要以为写出程序之后软件开发工作就接近完成了,实际上,大约还有同样多的开发工作量需要完成。
仅就测试而言,它的目标是发现软件中的错误,但是,发现错误并不是我们的最终目的。
软件工程的根本目标是开发出高质量的完全符合用户需要的软件。
软件测试的目的 基于不同的立场,存在着两种完全不同的测试目的。
从用户的角度出发,普遍希望通过软件测试暴露出软件中陷藏的错误和缺陷,以考虑是否可以接受该产品。
而从软件开发者的角度出发,则希望测试成为表明软件产品中不存在错误的过程,验证该软件已正确地实现了用户的要求,确立用户对软件质量的信心。
因为在程序中往往存在着许多预料不到的问题,可能会被疏漏,许多隐藏的错误只有在特定的环境下才可能暴露出来。
如果不把着眼点放在尽可能查找错误这样一个基础上,这些隐藏的错误和缺陷就查不出来,会遗留到运行阶段中去。
如果站在用户的角度替他们设想,就应当把测试活动的目标对准揭露程序中存在的错误。
在选取测试用例时,考虑那些易于发现程序错误的数据。
下面这些规则也可以看作是测试的目的或定义:1. 测试是为了发现程序中的错误而执行程序的过程;2. 好的测试方案是极可能发现迄今为止尚未发现的错误的测试方案;3. 成功的测试是发现了至今为止尚未发现的错误的测试。
从上述规则可以看出,测试的正确定义是“为了发现程序中的错误而执行程序的过程”。
这和某些人通常想象的“测试是为了表明程序是正确的”,“成功的测试是没有发现错误的测试”等等是完全相反的。
正确认识测试的目标是十分重要的,测试目标决定了测试方案的设计。
如果为了表明程序是正确的而进行测试,就会设计一些不易暴露错误的测试方案;相反,如果测试是为了发现程序中的错误,就会力求设计出最能暴露错误的测试方案。
由于测试的目标是暴露程序中的错误,从心理学角度看,由程序的编写者自己进行测试是不恰当的。
因此,在综合测试阶段通常由其他人员组成测试小组来完成测试工作。
此外,应该认识到测试决不能证明程序是正确的。
即使经过了最严格的测试之后,仍然可能还有没被发现的错误潜藏在程序中。
测试只能查找出程序中的错误,不能证明程序中没有错误。
软件测试需要注意的原则是什么
从开发者的角度出发.妥善保存一切测试过程文档,意义是不言而喻的,比如网络异常中断、电源断电等情况。
4,需要注意以下几点: 1,修改一个错误而引起更多错误出现的现象并不少见。
8.程序员应该避免检查自己的程序,测试工作应该由独立的专业的软件测试机构来完成,从不同的角度出发会派生出两种不同的测试原则。
7.回归测试的关联性一定要引起充分的注意,不要希望在极短的时间内完成一个高水平的测试,一定要有一个B来确认,严重的错误可以召开评审会进行讨论和分析。
6,特殊情况下要制造极端状态和意外状态.应当把“尽早和不断地测试”作为开发者的座右铭。
2,并把测试时间安排得尽量宽松.制定严格的测试计划。
从用户的角度出发,就是希望通过软件测试能充分暴露软件中存在的问题和缺陷。
一般有A测试出来的错误。
5.对测试错误结果一定要有一个确认的过程,这和程序员的编程水平和习惯有很大的关系,就是希望测试能表明软件产品不存在错误,已经正确地实现了用户的需求。
中国软件评测中心的测试原则,就是从用户和开发者的角度出发进行软件产品测试的。
为了达到上述的原则.一定要注意测试中的错误集中发生现象。
3.设计测试用例时,应该考虑到合法的输入和不合法的输入,以及各种边界条件软件测试 展开
转载请注明出处51数据库 » 测试是为了验证该软件已正确地实现了用户的