3.综合测试评估工具
把静态分析、动态分析、测试评估等综合在一起,测试人员可以用命令来控制系统执行不同的测试工具,各工具模块之间的通信通过数据库来实现。一个可行的简单办法是建立一组测试工具,或者叫做测试工具库。这些工具可能都是相互独立设计的,彼此间没有什么联系,但都能从某一侧面对程序进行测试,任由用户选择使用。
测试脚本
在测试过程中,测试脚本起着关键的作用。每种脚本技术在支持脚本完成测试事例的时间和开销上都有各自的长处和短处。对于软件测试来说,使用哪种脚本技术并不是最主要的,脚本所支持的实现测试事例体系的整体考虑才是最主要的。
1.线性脚本技术
线性脚本是录制手工执行的测试事例得到的脚本。这种脚本包括所有的击键、功能键、箭头控制测试软件的控制键及输入数据的数字键。如果用户只使用线性脚本技术,即录制每个测试事例的全部内容,则每个测试事例可以通过脚本完整地被回放。几乎任何可重复的操作都可以使用线性脚本技术实现自动化。
2.结构化脚本技术
结构化脚本类似于结构化程序设计,结构化脚本中含有控制脚本执行的指令,这些指令或为控制结构或为调用结构。所有测试工具脚本语言支持三种基本控制结构。第一种形式为“顺序”脚本(即前面介绍的线性脚本)。另外两种控制结构形式的脚本为“选择”或“叠代”。选择控制结构使脚本具有判断功能,最普通的形式是“if”语句判断条件为真或为假; 叠代控制结构可以根据需要重复一个或多个指令序列,有时也将这种结构称为“循环”。
除控制结构外,一个脚本可以调用另一个脚本,即将一个脚本的控制点转到另一个子脚本的开始,执行完子脚本后再将控制点返回到第一个脚本。这种机制可以将较大的脚本分为几个较小的易于管理的脚本。
结构化脚本技术的主要优点是健壮性更好;可以执行许多其他类似的功能,如需要重复的指令可以使用循环结构;还可以作为模块被其他脚本调用。其缺点是使用脚本变得更加复杂,而且测试数据仍然“捆绑”在脚本中。
3.共享脚本技术
共享脚本是指脚本被多个测试事例使用。这种技术的思路是产生一个执行某种任务的脚本,而不同的测试要重复这个任务,当要执行这个任务时只需在每个测试事例的适当地方调用这个脚本。这样将带来两个好处: 第一,可以节省生成脚本(编写或录制指定的操作)的时间。