论文部分内容阅读
随着移动互联网的不断发展,移动设备越来越普及,移动应用数量庞大且增长迅速。移动应用的质量保证通常采用测试进行,而移动应用是事件驱动的应用,适合使用基于界面的脚本进行自动化测试执行,这被学术界与工业界普遍采用。移动应用开发周期短且变更频繁,测试周期往往较短,测试面临严峻的挑战:测试脚本大多数依赖于人工书写或录制,移动应用的频繁变更会导致已有的脚本失效,这一问题非常突出。论文研究基于模型的移动应用测试脚本自动生成与维护技术,使用模型刻画移动应用的行为及其变更,研究基于行为模型自动产生测试脚本、基于变更模型自动维护测试脚本的方法。论文主要工作包括:1.提出基于模型的移动应用测试脚本自动生成方法。本文提出了使用事件序列模型(Event Sequence Model,ESM)刻画移动应用行为,并基于该模型提出了自动生成移动应用测试脚本的方法,建立了模型和测试脚本之间的映射关系。2.提出了基于变更模型的移动应用测试脚本的自动维护方法。本文基于不同版本的移动应用间的变更及这些变更对事件的影响分析,提出了增量事件序列模型(Delta ESM)来刻画移动应用界面变更,在此基础上,提出了基于变更模型的移动应用测试脚本自动维护方法,首先找到脚本对应的模型事件序列,然后根据变更维护该事件序列,最后重新生成测试脚本。3.开发了原型工具并进行了实验研究。针对提出的方法,本文实现了原型工具ATOM;基于本文的方法和工具,选择了安卓电子市场上11个真实应用,对每一个应用选取了 2个不同的版本,进行了建模、测试脚本生成、变更模型构建,对自动脚本维护进行了实验研究,工具成功地维护了所有受影响的测试脚本。维护后的脚本在保留旧脚本事件的同时,尽可能的覆盖变更内容,大大减少了人工维护的工作量,具有较高的可用性。