24小时论文定制热线

热门毕设:土木工程工程造价桥梁工程计算机javaasp机械机械手夹具单片机工厂供电采矿工程
您当前的位置:论文定制 > 毕业设计论文 >
快速导航
毕业论文定制
关于我们
我们是一家专业提供高质量代做毕业设计的网站。2002年成立至今为众多客户提供大量毕业设计、论文定制等服务,赢得众多客户好评,因为专注,所以专业。写作老师大部分由全国211/958等高校的博士及硕士生设计,执笔,目前已为5000余位客户解决了论文写作的难题。 秉承以用户为中心,为用户创造价值的理念,我站拥有无缝对接的售后服务体系,代做毕业设计完成后有专业的老师进行一对一修改与完善,对有答辩需求的同学进行一对一的辅导,为你顺利毕业保驾护航
代做毕业设计
常见问题

安卓手机性能自动化测试智能系统开发

添加时间:2019/02/25 来源:北京邮电大学 作者:朱陆坤
论文对现有的安卓手机测试技术展开研究,针对当前测试技术的不足,提出了一种安卓手机性能自动化测试架构,为大规模安卓手机测试提供了解决方案,论文详细介绍了系统的各个模块,并对各个模块用到的技术细节做了详细阐述。
以下为本篇论文正文:

摘要

  安卓系统自进入人们视野以来,因其开放性和稳定性备受手机厂商和智能硬件公司追捧,基于安卓系统的各种终端设备不断涌现。由于待测应用程序的复杂性和移动设备资源的有限性,以及各大安卓设备厂商对安卓系统进行了深度定制,使得安卓系统测试难度不断加大。安卓系统测试往往包含很多的重复性劳动,传统的人工测试方式需要大量的测试人员才能满足软件测试的需求。针对以上问题,Google公司开源了 Uiautomator框架,以期通过自动化程序解决安卓软件重复性测试问题,以节省测试人力。虽然安卓自动化测试框架在一定程度上提高了安卓软件的测试效率,但它并没有解决测试用例的筛选、潜在失败测试用例智能调度和大规模测试需求等问题。本文基于以上问题,提出了一种新的安卓手机性能自动化测试智能系统。

  本文的主要工作包括:(1)通过分析传统测试技术的不足,提出一种新的安卓手机性能自动化测试智能系统;(2)通过网络爬虫获取垂直应用市场上的软件信息,根据软件评分、下载数、浏览数对流行应用排序,从流行应用中提取测试用例;(3)引入协同过滤推荐算法推荐潜在失败测试用例,通过调度器达到测试用例的智能化调度,提升漏洞的挖掘效率;(4)优化Hadoop下小文件存储和作业调度问题,提升测试日志的解析效率;(5)系统的验证与测试。

  为了评估系统的可行性,本文搭建了测试平台,对市场上主流机型进行功能验证。实验结果表明,安卓手机性能自动化测试智能系统能够有效的挖掘安卓系统下的潜在漏洞,同时有效避免重复性的人工劳动;基于网络爬虫提取测试用例,保证了测试用例的科学性和优质性;通过引入协同过滤算法推荐潜在失败用例优先执行,提高了失败测试用例的挖掘效率;并提出一种适用测试场景的日志存储和解析引擎,大幅度提升了测试曰志解析效率。实验表明,本系统有效地提升了漏洞挖掘的准确性和效率,使单人多机大规模手机测试成为了可能,为后续手机测试研宄提供了重要的参考价值。

  关键词:安卓 自动化测试 协同过滤 网络爬虫 日志存储

ABSTRACT

  It has been sought after by many mobile phone manufacturers and smart hardware companies since the emergence of Android system because of its openness and stability. And many terminal equipments based on Android system continue to emerge. Due to the complexity of the application to be tested and the limited resources of mobile devices, meanwhile the major android equipment manufacturers have depth customization on Android, gradually increase the difficulty of testing. Android software testing often contains a lot of repetitive work, the traditional manual testing requires a large number of testers to meet the test requirements. To solve these problems, Google make Uiautomator framework known to public, in order to solve the problem of the Android software repeatability test by means of automated procedures, thereby saving testing manpower. Automated test framework improves the efficiency of the test in a certain extent. But it does not solve the test case selection, the potential failure of intelligent scheduling and use of large-scale mobile phone testing and other issues. Based on the above pain points, this paper presents an intelligent test system for Android mobile phone performance.

  The contributions of this paper include: (1) This paper presents a new intelligent test system of Android mobile performance through analyzing the shortcomings of traditional testing technology based on the introduction of Android automatic test technology. (2) Based on the research and implementation of web crawler-based test case extraction technology: get the software information in the vertical application market through web crawler. Sort the popular application according to the software score, download number and the views. Then write test cases based on popular applications. (3) Introduce the collaborative filtering recommendation algorithm to rapidly mining the potential failure test cases. And improve the efficiency of vulnerabilities mining through the scheduling module to test the intelligent scheduling of cases. (4) Optimize hadoop for small file storage and job scheduling to improve the efficiency of test log analysis. (5) System validation and testing.

  In order to evaluate the feasibility of the system, this paper builds a test platforai to verify the mainstream mobile phone function. The experimental results show that the intelligent system of Android mobile performance test can effectively exploit the potential vulnerabilities under the Android system, and avoid the repetitive manual labor effectively. Ensure the test case of scientific and quality based on the network crawler extract test cases. The proposed method can improve the efficiency of mining failure test cases by introducing collaborative filtering algorithm. In addition, a log storage and parsing engine for testing scenarios is proposed, which greatly improves the eiBficiency of test log analysis. The system effectively improves the accuracy and efficiency of vulnerabilities mining, and single-person multi-machine large-scale mobile phone testing has become possible. At the same time, it provides an important reference value for the follow-up mobile phone test research.

  KEY WORDS: Android, Automated testing, Collaborative filtering, Web crawler, Log storag

  随着移动互联网的发展,接入互联网的智能手机、平板电脑和可穿戴设备的数量也快速增长,同时运行在智能设备上的各种应用程序迎来爆发。安卓系统得益于其灵活的移植性、开放性和可扩展性被广泛应用于各类移动智能终端设备。普通用户对手机性能的要求逐渐提高,使得各种手机商也开始重视安卓设备的稳定性、易用性和可信赖性。

  为了符合国内用户习惯,打开国内手机市场,国内各大手机厂商不惜花费巨大人力成本对安卓系统进行深度定制,例如小米公司的MIUI系统在原生系统的基础上添加了伪甚站识别功能并优化将电模式等功能;锤子科技的Smartisanos开创性地加入了OneStep、Big Bang等新特性,创造出信息处理的全新交互模式,并结合讯飞语音输入,优化文字输入、编辑和分享等功能,大幅提升了安卓手机的性能。安卓系统的开源特性给手机厂商带来诸多优势的同时,也增加了测试难度。近年来每天都有大量基于安卓系统的新产品上市,要保证这些产品的质量,加快产品的上线速度,必须依靠全面正规的测试。很多软件问题和系统问题可以在测试阶段被发现,开发者可以通过测试报告找到当前程序的不足之处,对程序加以改进,从而不断提高程序性能[1]。程序严谨的逻辑性决定了测试工作往往是重复的和低脑力的,并且又需要稳定准确的操作。在这种场景下,计算机的优势远大于人力。同时,传统的手工测试方式具有以下缺点:测试人员的代码能力较低是国内测试人员的一个通病,测试人员很难在代码层面做出测试。由于测试工作的枯燥性和重复性,测试人员长时间工作之后难免会出现各种疏忽,从而造成测试结果的不准确性。一些系统级相关的错误,往往通过压力测试才能发现,很难通过人工测试找到。基于以上问题,自动化测试技术在软件测试领域具有很大的应用前景和应用价值。

  安卓手机自动化测试系统是由测试用例提取、测试管理系统、测试用例调度、日志存储和日志分析等模块组成。其中测试用例的提取是整个测试系统的基础,全面优质的测试用例有助于提高测试结果的准确性和全面性。传统的测试用例提取主要是依赖人工筛选,测试人员根据主流软件应用的特点和类别提取测试用例,人工筛选测试用例有很大的主观性和局限性,这种方式筛选的测试用例往往不能覆盖手机的大部分功能,造成一些潜在漏洞不能被及时挖掘,进而影响用户使用体验[2]。同时人工筛选的测试用例往往在功能点上是冗余的,会造成功能的重复测试,无形中增加了测试周期[3]。传统的测试系统一般是单人单机、单人一组机的模式,在这种模式下,一个测试人员只能负责少量的测试机型,由于系统功能的不完整,在测试过程中需要测试人员不停的检查测试状态,造成整个系统的测试效率比较低下。日志分析模块是测试系统的重要一环,失败用例的分析和潜在失败测试用例的相关性推荐[4][5]都需要测试日志作为支撑,然而测试日志一般是非结构化的文本,如何快速地在大量日志中提取出有价值的信息成为测试系统的性能瓶颈。

  尽管传统的自动化技术受到广大手机厂商的重视和支持,但是多年来并没有在实际测试中得到大规模应用,究其原因就在于传统的自动化测试系统在测试效率和漏洞挖掘方面存在明显不足。在此背景下,本文在传统的测试平台基础上,针对测试用例提取、测试系统架构、日志存储和日志分析等技术进行了系统研宄,通过吸收传统测试技术的优秀思想,研宄一种新的安卓手机性能自动化测试智能系统,以期化解传统测试系统的缺陷和弱点。

  安卓手机性能自动化测试智能系统:

测试用例控制图
测试用例控制图

手机状态和日志下载页面图
手机状态和日志下载页面图

传统爬虫DNS解析性能与新型爬虫DNS解析性能对比
传统爬虫DNS解析性能与新型爬虫DNS解析性能对比

随着时间推移缓存命中数
随着时间推移缓存命中数

a与MAE关系图
a与MAE关系图

数据稀疏性与MAE关系
数据稀疏性与MAE关系

随着文件数据量增大作业分配时间占比变化
随着文件数据量增大作业分配时间占比变化

測试用例调度器架构图
測试用例调度器架构图

測试用例执行器架构图
測试用例执行器架构图

 

目录

  第一章 绪论
    1.1项目背景
    1.2研宄现状
      1.2.1国外研究现况
      1.2.2国内研究现况
    1.3主要工作
      1.3.1研宄内容
      1.3.2创新之处
      1.3.3应用前景
    1.4论文结构
  第二章 安卓手机自动化测试智能系统相关技术介绍
    2.1安卓系统介绍
    2.2安卓系统的特点和优势
    2.3安卓系统架构介绍
    2.4安卓手机测试的价值
    2.5现有的安卓手机自动化测试技术
    2.6传统自动化测试系统的不足
    2.7关键技术背景介绍
      2.7.1网络爬虫介绍
      2.7.2推荐算法介绍
      2.7.3HDFS存储原理介绍
      2.7.4MapReduce执行原理介绍
    2.8本章小结
  第三章 安卓手机性能自动化测试智能系统关键技术研究与设计
    3.1基于网络爬虫的测试用例提取
      3.1.1典型的测试用例介绍
      3.1.2移动应用网络爬虫架构
      3.1.3DNS解析模块优化
    3.2潜在失败用例相关性推荐
      3.2.1基于属性和奖惩因子的item-based协同过滤算法优化与实现
    3.3基于HDFS和Hbase小型测试日志存储优化
      3.3.1小文件导致的问题
      3.3.2传统的小文件存储问题解决方案
      3.3.3改进的小文件存储方案
    3.4MapReduce作业执行过程优化
    3.5本章小结
  第四章 安卓手机性能自动化测试智能系统实现
    4.1安卓手机性能自动化测试智能系统架构
    4.2测试用例提取层设计与实现
      4.2.1网页下载器设计与实现
      4.2.2网页解析器实现
      4.2.3URL去重模块实现
      4.2.4信息存储模块实现
      4.2.5测试用例划分和编写实现
    4.3控制器实现
    4.4测试用例调度器实现
    4.5通信模块实现
    4.6测试用例执行器实现
    4.7日志存储和解析模块实现
      4.7.1在Hadoop上解析日志
    4.8数据存储模块实现
      4.8.1数据表设计
      4.8.2数据表操作
    4.9用户输入层实现
    4.10本章小节
  第五章 系统搭建及验证测试
    5.1系统环境与配置说明
    5.2安卓手机性能自动化测试智能系统测试与验证
      5.2.1新型爬虫DNS解析优化性能分析
      5.2.2改进后的item-based协同过滤算法性能分析
      5.2.3优化后的MapReduce处理作业调度性能分析
      5.2.4测试系统稳定性测试
      5.2.5漏洞反馈功能性测试
    5.3本章小结
  第六章 结束语
    6.1论文总结
    6.2下一步研究工作
  参考文献
  致谢
  攻读硕士期间发表的论文

(如您需要查看本篇毕业设计全文,请您联系客服索取)

相关内容
相关标签:安卓毕业设计
好优论文定制中心主要为您提供代做毕业设计及各专业毕业论文写作辅导服务。 网站地图
所有论文、资料均源于网上的共享资源以及一些期刊杂志,所有论文仅免费供网友间相互学习交流之用,请特别注意勿做其他非法用途。
如有侵犯您的版权或其他有损您利益的行为,请联系指出,论文定制中心会立即进行改正或删除有关内容!