三、软件测试自动化
测试自动化(testautomation)是一类工具。它可以执行测试用例、查找软件缺陷、分析看到的信息、记录结果。这就是软件测试自动化。
1、宏录制与回放
最基本的测试自动化类型是录制第一次执行测试用例时的键盘和鼠标操作,然后在需要重新执行这些测试时回放一次。
在MAC系统上有Quickeys工具可以录制并回放;在windows上有MacroMagic工具。
宏录制器和播放器是一种驱动程序工具。用于控制和操作被测试软件的工具。
如MacroMagic设置向导可以设置宏的如下选项:
1)名称:为宏命名;
2)重复次数:设置宏在运行时重复或者循环的次数;
3)触发条件:设置宏如何启动,可以按热键、输入一串字符、单击快捷方式、当某个窗口显示出来时或者当系统闲置一段时间之后;
4)捕捉对象:可以选择只捕获(记录)键盘操作或键盘和鼠标的移动和单击都记录;
5)回放速度:该速度比最初录制时最多慢20%,最多快500%;
6)回放位置:该选项确定鼠标移动和单击位置与某个窗口的位置是绝对的还是相对的。
注意:在使用宏录制器捕捉鼠标移动和单击时要小心,因为程序并非总是在屏幕上的同一位置启动和出现。把回放位置设置为相对于程序窗口比设置为屏幕的绝对位置更好,即便如此,GUI的一点变化也会扰乱捕捉的步骤。
2、可编程的宏
可编程的宏是在简单录制和回放的变化上的一大进步。与其通过录制第一次执行测试时的操作来创建可编程的宏,不如在创建时编写回放系统遵循的简单指令。
可编程的宏与录制的宏相比,具有真正的优势:
1)它可以暂停执行,向测试员提示预期结果,并询问测试是通过还是失败。
2)还可以解决录制宏的许多时序问题,不是依靠绝对延时,而是等待特定条件成立才继续执行。
然而,在进行复杂测试时还遗漏了两个重要之处:
1)可编程的宏限于直接执行命令行——只能循环和重复;
2)在常规编程语言中可以见到的变量和决策语句不能使用,而且没有自动检查测试结果的能力。
3、完全可编程的自动测试工具
像可视化测试程序这样的自动测试工具为软件测试员创建强大测试提供了手段。
许多工具基于BASIC编程语言。
这些自动化工具具有的最重要的特点是进行验证的能力,实际上就是检查软件是否以预期方式运行。实现这一点的方式:
1)屏幕捕获:首次执行自动测试时,可以在肯定正确的关键点捕捉并保存屏幕图像;
2)控件值:检查软件窗口中各种控件的值;