安卓自动化测试工具的多维评估系统的设计与实现

来源 :南京大学 | 被引量 : 0次 | 上传用户:blueskygx
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
安卓设备的广泛应用得益于移动互联网的发展,因其开源特性,设备之间差异较大,碎片化问题日益严峻,测试对安卓应用愈发重要。应用间的激烈竞争导致开发周期缩短,也使用户对应用的要求越来越高。手工测试因时间成本过高无法满足当前开发的需要,自动化测试工具产业得以蓬勃发展。尽管大多数工具自称测试效果较好,但其测试实验对评估指标、应用集及设备等方面考虑不够全面,导致结果不够客观。因此本文提出一个较为全面客观的自动化测试工具衡量系统。该系统有利于工具的横向比较,也为后续工具的开发提供参考。本文对现有的自动化测试工具进行调研,抽象出了异常、变异、代码覆盖、UI控件覆盖以及碎片化支持等五个多维评判指标,并针对以上指标设计了相关检测方法,解决了评估指标不全面的问题。系统拥有可扩展的待测应用集,其中包括插桩后的原始应用以及对应的变异应用,用户只需提供应用源码方可对应用集进行扩充。通过实现相应接口,系统即可在真机集群上执行待测工具。系统在测试执行期间对自动化测试工具及设备进行监控,同时会收集应用运行时生成的文件、设备日志和被测工具的日志信息。这些数据会存储为原始数据,作为后续评分模块的输入。根据本文提出的多维评估指标公式,对原始应用和变异应用数据进行分析,可以得到测试工具的具体得分。系统后端使用Spring Boot框架完成,通过ADB对待测设备进行连接,前端使用React实现,通过Echarts框架将结果以图形化的方式展示。用户可以从图像中简明直观地了解测试结果。本文选取了17个开源应用进行自动插桩变异操作,除系统环境因素导致1个应用编译失败外,其它应用均成功执行该操作。包括变异应用在内,共形成了1089个应用的待测应用集合。系统已对5个知名自动化测试工具进行适配。本文使用本系统对以上工具进行测试,测试在6个设备上共执行了5040次自动化测试工具的测试任务。在测试过程中系统可对设备以及测试工具进行有效管理,测试数据收集、日志收集、监控等功能表现正常。测试后使用系统对收集的数据进行分析,成功使用本文提出的多维评估指标对自动化测试工具进行评估,评估结果清晰展示了待测工具在五个维度的测试表现以及具体得分。
其他文献
LDPC(Low-Density Parity-Check)码作为信道编码的常用方法,在诸多通信系统中得到广泛应用,但是在其迭代译码中存在着错误平层的问题,这对某些LDPC码的特殊应用场景造成了较大的困扰。研究证明陷阱集与错误平层有着非常紧密的联系,而后处理方法能针对陷阱集进行处理,以此来降低错误平层。本文对常见的陷阱集进行了分析,并提出了一种基于迭代标记的后处理方法,使用该方法得到的标记后的码字
20世纪以来红外成像技术得到广泛的应用和发展,在众多领域如军事领域中已经成功的利用它实现了在黑暗中观察。相应的红外图像中的目标检测技术也得到了相应的发展,从传统的边缘特征提取、阈值分割等方法,到现如今基于深度学习和神经网络的方法得到广泛使用。然而红外成像技术依然面临成像质量不高、可观测特征有限等问题,加上在如军事应用中,目标在图像中往往呈现小而模糊的特征,因此给直接进行目标检测带来一定的困难。自从
在21世纪的如今,人工智能已经成为了研究热点并且应用于人类社会的诸多领域。深度学习是人工智能的重要领域,神经网络则是深度学习的基本框架,其中的代表性框架之一就是卷积神经网络。卷积神经网络擅长处理视觉信息,在图像的识别、分类等任务上有重要的应用。但卷积神经网络运算量庞大,要将其应用于对实时性和功耗要求都非常高的场合,需要在硬件设计上进行针对性的优化。本文提出了一种面向卷积神经网络的专用加速器。该加速
随着城市化进程加快,以轨道交通为主,公交车、共享出行方式、停车换乘等为辅的城市交通网络,成为缓解交通拥堵问题的重要形式。而接驳问题是制约地铁出行效率的重难点,影响乘客的使用意愿和体验。探究出行者选择接驳方式的决策过程,有助于政府和轨道交通运营者理解影响乘客接驳方式选择的因素及其行为特征,为运营管理提供理论支持。首先,本文通过RP调研,调查出行者在实际生活中选择接驳方式的过程,发现在面临多种接驳方式
学位
学位
学位
目前国内主流手机出厂时都自带音乐播放器,并且大部分用户都首选这种音乐播放器。VIVO的音乐播放器存在不足,如:软件过于臃肿,不必要的功能偏多;软件部分界面友好偏弱,且操作繁琐;软件加载过慢,影响用户体验。为此VIVO公司决定开发、改进现有音乐播放器,更好地服务用户。本文说明了项目背景,简述了该音乐播放器的开发目的,介绍了国内几款主流音乐播放器的发展状况。综述了实现项目所采用的Recycler Vi
目前,浮点计算程序被广泛应用于航空航天、国防军事等对可靠性要求极高的关键领域,因此保证浮点程序计算结果的准确性至关重要。然而,由于计算机进行浮点运算时使用的数值与实际值之间存在舍入误差,舍入误差的累积会影响浮点程序的准确性,因此学术界提出了自动化的误差检测技术来解决这一问题。误差检测需要能够触发误差累积的数值用例输入,而这些数值用例输入通常分散在一些范围较小的输入区间内。现有的数值用例生成系统存在
学位