基于GUI的Android自动化性能测试方法的研究和实现

来源 :华东师范大学 | 被引量 : 0次 | 上传用户:hoko0428001
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
电子移动设备的快速发展,使得移动应用软件已经拥有了大量的用户群体。现在的手机操作系统市场主要由Android和iOS占据。Android系统受益于其开源性和跨平台性,近几年来已经逐步占据了大部分的市场份额。根据最新统计,Android系统已经拥有了87.7%的市场,成为了最受欢迎的移动端设备。Android应用程序(以下简称App)的运行是基于事件驱动的模型,在运行过程中大量使用了消息队列等函数回调的方法。这使得传统的测试技术不适用在这类应用程序上,导致开发者难以保证程序的质量。现有的相关测试工作将焦点放在App运行的正确性、稳定性和占用系统性能资源的合理性上,却忽略了App在运行过程中的流畅性。并且现有的性能测试工作虽然能发现CPU异常、内存泄漏、资源未释放等问题,但测试手段通常采用手工执行的方式。由于现有的Android应用软件大部分都是使用了敏捷开发模式,具有快速开发、持续迭代的特点。因此若继续使用手工测试,不但重复工作量大,而且存在较多的不稳定性,难以保证每次测试的全面性。因此,针对上述问题和挑战,本文提出了基于GUI的Android自动化性能测试框架PerDroid。PerDroid有效结合传统自动化测试和性能测试,着重关注App在运行时出现的流畅性问题。为解决这一问题,本文提出了基于页面相似度的反馈性随机遍历方法,自动化遍历App,发现运行过程中的性能问题。PerDroid尝试通过自动化遍历探索App的各个页面状态,尽可能保证测试过程中的全面性。在自动化遍历过程中,PerDroid会记录App运行时丢失的帧数信息和App生命周期迁移中所有回调方法的执行时长,并在遍历完成后结合遍历行为对数据进行分析,以定位引起页面不流畅问题的原因。在实验部分,本文选择抽取了相关工作中的Benchmark和F-Droid中的App进行实验。实验表明,该技术能更多的遍历App的状态,发现App在运行过程中出现的性能问题,取得良好的效果。同时,本文也实现了自动化性能测试工具PerDroid。PerDroid可以自动化的完成对程序的插桩,安装,运行,执行自动化测试,收集运行时的数据,分析并得到性能报告结果。报告可展现所有在程序运行时出现的不流畅问题的状态和原因,提供给开发者恢复问题场景。并在实验部分验证了PerDroid可以有效提高测试的可靠性和有效性,并且降低性能测试的成本。
其他文献
《德意志意识形态》是马克思主义唯物史观理论体系形成的标志性著作。本文在批判费尔巴哈“人”学思想上的直观唯物论的基础上,更深刻的阐释了马克思主义唯物史观“现实的人
基于1982-2006年间的GIMMS NDVI和2001-2013年的MODIS NDVI数据对渭河流域30年来植被NDVI的年际变化和空间分布特征进行了分析,并结合研究区内的气象数据探讨了植被NDVI与气
目的探讨清热化瘀汤治疗子宫腺肌症的效果。方法选取92例子宫腺肌症患者,采用随机数表法分为观察组和对照组,各46例。对照组采用血府逐瘀胶囊治疗,观察组采用清热化瘀汤治疗,
<正>红壤在江西分布广,面积大,具有很大的开发与利用潜力,在整个土壤资源中具有重要地位。但是,红壤一般酸性强,养分贫瘠且有效性低。为探讨其养分亏缺程度和提高土壤肥力措
北京师范大学心理学院与伴侣动物研究信息中心的研究发现,伴侣动物对人身心健康有直接或条件性影响。研究表明,老年人需求医疗服务的频率与生理健康和心理压力有关。当心理压
我们以发展的眼光,瞩目未来、提升观念、改变方式、完善能力,为教育更好发展积淀了思考$$这个寒假,因全民共同抗击疫情的努力,变得特殊而有意义。广大教育工作者在积极防控疫情的
报纸
搭建了扭曲管闭式冷却塔的换热实验平台,在空冷模式下通过测试在不同风机频率以及风机频率固定时不同的管内流体进口温度、空气干球温度情况下闭塔的传热性能、流动阻力和能耗
目的研究子宫肌瘤和子宫肌腺病经阴道彩色多普勒超声诊断的效果。方法采集本院中2018年2月~2018年10月间收治子宫肌瘤和子宫肌腺病患者的临床资料,随机挑选出160例进行本次实
金融资产收益率分布具有“尖峰”、“肥尾”、“有偏”、“非对称”等典型事实,传统的正态分布、t分布、SKST分布无法完全描述这些特征,影响了以收益率分布设定为基础之一的
高盐废水盐度变化是影响微生物生长的重要因素之一。研究以中度嗜盐菌Halomonas sp.STSY-3为例,测定其在不同盐度下生长对数期末OD600,并以葡萄糖为限制性基质,利用Monod方程