论文部分内容阅读
随着计算机技术的飞速发展,信息化程度的不断提高,软件的规模和复杂度都不断增长,软件质量越来越受到重视,软件测试在软件开发中的比重进一步加大,其工作量占到软件开发总工作量的40%以上。很多测试任务工作量极大,很难用手工方式完成,自动化测试的使用势在必行。图形用户界面(GUI)测试是软件测试中十分重要的一环,目前图形用户界面的测试主要集中在测试用例的自动生成和录制回放技术的研究。本文主要针对Java平台上的应用软件的图形用户界面自动化测试进行录制回放方面的研究与实现。录制回放技术不是简单的屏幕录制,它需要根据被测系统的事件序列分析用户进行了什么操作并且将其记录在脚本文件中,分析的结果应该是一串有明确语义的语义事件,而不是让人无法看懂的原子事件。测试人员在事件录制过程中或录制结束后可以向脚本文件中加入一些逻辑控制和检查点来检验被测系统的功能是否正确。使用已经录制好的脚本文件可以模拟用户录制脚本时的操作流程,对经过修改的被测系统进行界面和功能测试。事件回放过程完全自动化,无需测试人员看管,测试报告自动生成。整个测试过程可以安排在下班后或夜间进行。本文主要在以下几个方面进行了研究:(1)在现有开源软件的事件录制的基础上,根据我们系统的实际需求和特征,提出了一种以有穷自动机为基础,增加了事件消耗机制和原始事件录制机制的复合事件的录制方法。这种新的事件检测技术可以较完整的录制用户操作的所有语义事件,基本满足实际测试工作中的需求。(2)了解了现有的脚本设计的思想,分析了商用和开源录制回放工具软件的脚本,为新的录制回放系统设计了一种可以满足实际需要,具有较好的可读性,较强的功能,持久的,可复用的脚本。(3)实现了脚本的解析和回放,研究了事件回放中的同步控制,解决了事件回放不同步的问题,取得较好的使用效果。