软件测试方法和策略

软件测试方法和策略

ID:10790121

大小:255.70 KB

页数:3页

时间:2018-07-08

软件测试方法和策略_第1页
软件测试方法和策略_第2页
软件测试方法和策略_第3页
资源描述:

《软件测试方法和策略》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、(山西省电子产品检验所,山西太原030024)摘要:在软件开发的过程中,人们使用了许多保证软件质量的方法、设计和实现软件,但难免还会在工作中犯猎误。这样,在软件产品中就会隐藏许多错误和缺陷。对于规模大、复杂性高的软件更是如此。结合在软件测评中的工作体会,介绍了软件测试的目的和原则、软件的几种测试方法,探讨了软件测试的策略。关键词:软件测试;策略中图分类号:TP311.52文献标识码:A陷就查不出来,会遗留到运行阶段中去。如果站在用户的角度,就应当把测试的目标对准揭露程序中的错误。在选取测试用例时,考虑那些易于发现程序错误的

2、数据。因此,软件测试的目的为:a)测试是程序执行的过程,目的在于发现错误;b)一个好的测试用例在于能发现至今未发现的错误;c)一个成功的测试是发现了至今未发现的错误的测试。根据这样的测试目的,软件测试的原则应该是:a)应当把“近早地和不断地进行软件测试”作为软件开发者的座右铭;b)测试用例应由测试输入数据和与之相对应的预期输出结果这两部分组成;c)程序员应避免检查自己的程序;d)在设计测试用例时,应当包括合理的输入条件和不合理的输入条件;e)充分注意测试中的群集现象;f)严格执行测试计划,排除测试的随意性;g)应当对每一个

3、测试结果做全面检查;h)妥善保存测试计划、测试用例、出错统计和最终分析报告,为维护提供方便。2测试信息流测试信息流如图1所示。测试过程需要三类输入:1软件测试及其目的和原则为了保证软件的质量和可靠性,应力求在分析、设计等各个开发阶段结束前,对软件进行严格的技术评审。但由于人们能力的局限性,审查不能发现所有的错误。而且在编码阶段还会引进大量的错误。这些错误和缺陷如果遗留到软件交付投入使用之时,终将会暴露出来。但到那时,不仅改正这些错误的代价更高,而且往往造成恶劣的后果。软件评测就是在软件投入运行前,对软件需求分析、设计规格说

4、明和编码的最终复审,是软件质量保证的关键步骤。软件测试是为了发现错误而执行程序的过程,或者说,软件测试是根据软件开发各阶段的规格说明和程序的内部结构而精心设计一批测试用例(即输入数据及其预期的输出结果),并利用这些测试用例去运行程序,以发现程序错误的过程。软件测试在软件生存期中横跨两个阶段:通常在编写出每一个模块之后就对它做必要的测试(称为单元测试)。编码与单元测试属于软件生存期中的同一个阶段。在结束这个阶段之后,对软件系统还要进行各种综合测试,这是软件生存期的另一个独立的阶段,即测试阶段。基于不同的立场,存在着两种完全不

5、同的测试目的。从用户的角度出发,普遍希望通过软件测试暴露软件中隐藏的错误和缺陷,以考虑是否可以接受该产品。而从软件开发者的角度出发,则希望测试成为表明软件产品中不存在错误的过程,验证该软件已正确地实现了用户的要求,确立软件质量的信心。因此,他们会选择那些导致程序失效概率小的测试用例,回避那些易于暴露程序错误的测试用例。同时,也不会着意去检测、排除程序中可能包含的副作用。显然这样测试对完善和提高软件质量毫无价值。因为在程序中往往存在着许多预料不到的问题,可能会被疏漏,许多隐藏的错误只有在特定的环境下才可能暴露出来。如果不把着

6、眼点放在尽可能查找错误这样一个基础上,这些隐藏的错误和缺收稿日期:2003-08-28作者车清太男40岁高级工程师使用白盒测试方法,主要是对程序模块进行如下检查:a)对程序模块的所有独立的执行路径至少测试一次;b)对所有的逻辑判定,取“真”与“假”的两种情况都能至少测试一次;c)在循环的边界和运行界限内执行循环体;d)测试内部数据结构的有效性,等等。但是对一个具有多重选择和循环嵌套的程序,不同的路径数目可能是天文数字。而且即使精确地实现了白盒测试,也不能断言测试过的程序完全正确。例如图3所示的小程序的流程图,它对应了一个有

7、100行源代码的Pascal语言程序,其中包括了一个执行达20次的循环。那么它所包含的不同执行路径数高达520(=1013)条,若要对它进行穷举测试,即要设计测试用例,覆盖所有的路径。即使有这么一个测试程序,对每一条路径进行测试需要1毫秒,同样假定一天工作24小时,一年工作365天,那么要想把图3所示的小程序的所有路径测试完,则需要3170年。2.3测试工具为提高软件测试效率,可使用测试工具支持测试工作,其作用就是为测试的实施提供某种服务,以减轻人们完成测试任务中的手工劳动。例如,测试数据自动生成程序、静态分析程序、测试结

8、果分析程序、以及驱动测试的测试数据库等等。3测试方法任何工程产品都可以使用以下的两种方法之一进行测试。a)已知产品的功能设计规格,可以进行测试证明每个实现了的功能是否符合要求。即黑盒测试。b)已知产品的内部工作过程,可以通过测试证明每种内部操作是否符合设计规格要求,所有内部成分是否已经检查。即白盒测试。

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。