论文部分内容阅读
软件测试是确保软件质量的重要途径之一。自动测试技术可以辅助应用程序的开发,在软件工程研究中具有重要意义。随着移动应用的普及,人们日常生活使用移动应用的机会越来越多。用户常常需要在复杂多变的场景中使用Android应用,这就使得Android应用的输入相较于传统平台应用更加复杂。为了支持Android应用开发过程,设计针对Android应用的测试输入序列生成工具十分必要。 本文设计并实现一款针对Android应用的测试输入生成工具,可以满足Android平台上的应用对于自动化测试的需求。具体地,本工具可针对不同应用自动生成测试输入事件序列,从而辅助测试人员自动化测试待测应用的功能,并为后续的错误修复提供一定的帮助。首先对Android SDK相关工具的框架结构和使用方法进行介绍,此后对测试输入生成的相关理论,以及前人所做的相关工作进行了阐述。在此基础之上本文详细介绍了一个针对Android应用的测试输入生成工具的设计与实现。该工具通过在Android模拟器上运行目标待测应用,实时检测该应用的相关控件响应状态,以便得到一系列可能触发程序问题的输入操作。这种实时检测的方式使得该工具得到的无效事件较少。针对所实现工具,设计两组实例研究。实例研究一将该工具应用于一个实际的Android应用,主要对工具的功能和特性进行验证,说明其可用性以及对于测试人员的实际意义。实例研究二通过将该工具与Android应用常用的测试输入生成工具Monkey做对比,发现本文所实现工具产生的测试输入事件无效事件更少,生成的测试输入事件种类更多,图形化的交互界面操作简单且生成结果展现形式更加直观。