自动化测试在测试内存泄露中的应用研究
作者:网络转载 发布时间:[ 2013/6/20 14:09:27 ] 推荐标签:
3.2 测试结果的保存
Robot 可以首先把大量的手工操作录制成为脚本,然后通过控制脚本对测试用例进行回放,测试人员可以设定时间和重复次数,在回放中可以记录下相关数据以便分析,其中重要的是内存占用情况。
在脚本运行中,需要将有价值的信息保存下来以备分析。主要记录的数据是被测试软件所占用的内存。还有一些其他的基本信息可以直接通过脚本输出,在脚本中附加相关命令,可以得到用户所需要的信息;例如开始结束时间、运行次数、时效次数以及时间等。
例如下面这个脚本的功能是把脚本启动时间记录下来。

其中输入脚本日志用于自动回归测试的测试用例输入;输出脚本日志则记录了整个测试过程的所有信息,作为测试用例的分析使用。
至于内存的采样记录数据专门工具记录下来。记录的数据好便于分析,比如excel 表格的形式,其中包括:采样时间,采样周期,内存值等。
4、测试结果的分析
作者曾经用Robot 测试过网管软件的内存泄露问题,在这里列举两个进程占用内存的例子:其中第一个存在内存泄露,第二个没有内存泄露。图中纵坐标为内存的参考值(两个图形的参考值不同,所以差别较大),横坐标为采样点的个数。
内存采样图一:

图1 内存采样图1
该图的测试时间为10 个小时,采样周期为5 秒。从图中可以看出,内存成斜线增长状态,成为一条斜率固定的直线。该进程内存泄露非常严重,需要加以改正。
内存采样图二:

图2 内存采样图2
该图的测试时间为10 个小时,采样周期为5 秒。从图中可以看出,除了在开始阶段有小幅的内存增长外,内存并没有持续增长;只有一些小幅震荡,属于正常情况。因为申请内存后,内存占用肯定会上涨,释放后内存又会降下来。该进程不存在内存泄露问题。
5、结语
提高软件的可靠性,对于软件的质量和顺利发行都遇有重要的意义。本文针对网管GUI 的特点,提出了基于GUI 的测试环境。与以往的测试方法不同,自动化测试强调系统整体架构,把软件作为一个整体来测试。这种方法大程度的模拟了用户的操作,从而提高软件的可信度。

sales@spasvo.com