迭代式安卓应用自动化测试系统的设计与实现1

preview
需积分: 0 1 下载量 148 浏览量 更新于2022-08-03 收藏 3MB PDF 举报
【迭代式安卓应用自动化测试系统的设计与实现】 随着移动应用市场的发展,开发周期的压缩使得测试环节面临巨大挑战。为了提升测试效率,本论文重点研究并实现了一个迭代式安卓应用自动化测试系统。该系统旨在解决传统自动化测试工具的局限性,如志愿者测试报告的质量不一,以及自动化工具缺乏人类测试知识等问题。 系统设计的核心在于记录、提取和融合用户的操作流程,将这些含有测试知识的流程引入自动化测试工具,以此提高测试效果。系统采用了迭代的方法:一方面,用户操作信息被引入工具,工具的输出结果又反馈给用户生成新的操作信息,形成一个循环;另一方面,系统执行多轮迭代式测试流程,区别于传统一次性测试,以增强测试覆盖度。 技术实现上,系统基于Appium框架进行了改造,能够在后台自动获取用户操作流程。前端使用Angular2构建用户友好的Web界面,方便测试人员操作;后端采用SpringBoot框架实现系统控制。通过ADB(Android Debug Bridge)工具和Uiautomator框架,系统能够与被测设备进行通信和控制。此外,利用Echarts和Dot工具,系统能够可视化覆盖的测试流程,帮助测试人员理解测试覆盖情况。 为了验证系统的有效性,论文设计了一项实验。使用Jacoco框架对被测应用进行插桩,以追踪运行时的代码覆盖率。实验选取了10款知名移动应用和50份用户操作流程,对比了系统测试结果与Monkey等知名工具的性能。实验结果显示,当测试时间为一小时,系统的平均代码覆盖率提升了13.98%,达到37.83%,超越Monkey的28.90%覆盖率。同时,引入用户信息后的测试结果全面涵盖了单独用户或工具测试的覆盖情况,证明了系统的完整性和实用性。 关键词:移动应用测试,安卓应用GUI测试,安卓自动化测试,自动化测试框架,自动化测试工具 这个迭代式安卓应用自动化测试系统的设计与实现,不仅提高了测试效率,还确保了更全面的测试覆盖,为移动应用的质量保障提供了有力支持,尤其对于缩短开发周期和提升产品质量有着重要的实际意义。