软件测试

发表于:2008-5-07 14:47

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:译者:肖艳霞    来源:51Testing投稿

1.9.         单元测试

1.9.1.     单元测试的考虑因素

单元测试可测试:

1、模块接口

2、局部数据结构

3、边界条件

4、独立路径

5、错误处理路径

针对以上测试一些建议检查列表:

模块接口

l     输入参数的数目是否等于形式参数的数目

l     输入参数和形式参数的属性是否匹配

l     单元模块的输入参数和形式参数是否匹配

l     参数是否以正确的顺序输入?

l     是否只输入变化了的参数?

l     全局变量在模块之间是否保持一致?

l     如果模块有输入/输出文件:

²     文件属性是否正确?

²     打开/关闭语句是否正确?

²     格式说明是否匹配输入/输出语句?

²     缓冲区的大小是否匹配记录的大小?

²     文件是否在使用之前已经打开?

²     是否是输入/输出错误处理措施?

²     在输入信息中是否存在文字错误?

局部数据结构(缺陷的一般源头)

l     错误或不一致的拼写

l     错误的初始化值或缺省值

l     错误的变量名

l     不一致的数据类型

l     上溢,下溢,寻址异常

边界条件-参考以上相关内容

独立路径-参考以上相关内容

错误处理

l     错误描述不清晰,难以理解

l     标记的错误与实际的错误不一致

l     错误在受错误机制控制之前,已经因超出系统预定运行时间而被自动处理

l     异常情况处理不正确

l     错误描述没有提供充足的信息,以帮助定位错误

1.10.         集成测试

可尝试非渐增式集成-一次性把所有的模块集合在一起,作为一个整体来测试,可这样方法通常都会存在着很大的隐患。

渐增式测试-由小模块开始集成和测试。

1.10.1.     自顶向下集成

沿着程序设计层次自顶向下集成模块。

采用深度优先或广度优先自顶向下集成方式

步骤:

1、主模块用作测试驱动模块,所有直属于主模块的下属模块用桩模块代替。

2、用深度优先或广度优先得到的实际模块代替桩模块。

3、一次只替换一个桩模块

4、在每次模块集成后进行测试

5、使用回归测试(重新执行先前所有的或一部分的测试),以确保已经通过测试的模块没有引入新的缺陷。

在设计早期核实主要的控制点和决策点。

最顶层结构被测试的次数最多。

深度优先的执行方法能保证一个功能被完整的执行,测试和验证。

可在早期实施关键功能的深度优先的执行方式。

自顶而下的集成(在某些程序上)由程序中的带图形用户界面的开发工具执行

1.10.2.     自底而上集成

从程序模块结构中的最底层的模块开始集成和测试。

使用驱动模块程序进行测试.

步骤:

1、把最底层模块组合成实现某一特定功能的簇。

2、使用驱动模块程序测试

3、测试簇

4、移去驱动模块程序,组合新的簇,如此沿着程序模块结构由底向上

1.10.3.     关于集成测试的说明

一般来说,倾向于使用自顶而下和自底而上的混合集成测试方式。

关键功能模块应该在早期就被集成和测试。

1.10.4.     集成测试相关文档

测试规格说明书描述整个软件的集成和测试计划

可能的纲要:

1、测试范围

2、测试计划

   1.测试阶段和版本

   2.时间表

   3.软件开销

   4.环境和资源

3、测试进程n(关于对版本n的测试的说明)

   1.集成顺序

      1)目的

      2)被测试的模块

   2.针对某一版本的模块m的单元测试

   3.关于对模块n的测试的说明

   4.模块的总体说明

   5.期望的输出结果

   6.测试环境

   7.特定的工具或技术

   8. 软件的总体说明

   9.测试用例数据

   10.版本n的期望输出结果

4、实际输出结果

5参考文献

6附录

测试范围是对软件具体功能,性能和要被测试的内部设计特性的概要。在测试范围中,要界定达到的测试效果,制定每个测试阶段的完成标准和时间表。

测试计划说明集成的策略。在测试计划中,测试按不同的阶段和版本划分,每个阶段和版本完成针对软件的特定功能和行为特征的测试。

例子:CAD软件的测试可划分以下阶段:

用户对话-选择命令,创造图形,显示效果,错误处理

数据处理和分析-创造图形,标注,转换,物理特性的计算

显示处理和生成-二维显示,三维显示,图形与图表。

数据库管理-存取,更新,完整性,性能。

每个阶段和子阶段详细说明一个功能类别,这个类别可与软件结构的特定部分相关联。

以下标准和测试适用于所有的测试阶段:

l     界面完整性:当每个模块(或一簇)被添加到软件结构中后的内部和外部接口测试。

l     功能正确性:查找功能错误

l     信息内容:测试局部的和全局的数据结构

l     性能:测试性能和与设计中界定的标准相比较。

测试计划还包括:

l     集成的时间表,每个阶段的开始和结束日期

l     软件的整体说明,侧重说明需要特别注意的部分。

l     测试环境的说明

测试计划应适合于局部需球,但也要包含集成策略(在测试计划里),并且测试细节是至关重要的,不可或缺。

版权声明:51Testing软件测试网及相关内容提供者拥有51testing.com内容的全部版权,未经明确的书面许可,任何人或单位不得对本网站内容复制、转载或进行镜像。51testing软件测试网欢迎与业内同行进行有益的合作和交流,如果有任何有关内容方面的合作事宜,请联系我们

《2023软件测试行业现状调查报告》独家发布~

精彩评论

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号