可复现的Android应用干扰测试与质量提升方法

来源 :上海交通大学 | 被引量 : 0次 | 上传用户:bigxiong
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
运行Android系统的设备覆盖广泛,不仅包括手机、平板电脑、笔记本电脑、台式电脑,也包括汽车中控、电视机等嵌入式系统设备。通常每台Android系统的手机或者平板电脑都运行着数十到上百个应用程序,相对精简的嵌入式设备也会运行数十个应用程序,这些移动设备上的应用程序简称App。移动软件开发者在开发过程中需要对App进行测试,但由于Android系统版本和设备的碎片化严重,系统软件版本不尽相同,硬件型号各异,当App运行在用户设备上时,可能遇到碎片化引起的不兼容问题,触发在开发测试阶段没有发现的质量缺陷。Android系统包含许多系统、应用的突发事件,例如来电、闹钟、转屏等,这些突发事件会打乱App正常的运行逻辑,产生在开发测试过程中难以发现的问题。除此之外,如何详尽完善地收集用户设备上App出错的信息,也是App质量提升的关键性难题。本文介绍了Android字节码插桩技术、移动App灰盒测试,并提出了基于字节码插桩技术的可复现灰盒干扰测试的概念,依据该概念提出并设计了全新的App质量提升方法和依据该方法的JazzDroid工具组。本文提出的方法包括无需人为干预的字节码插桩和App重打包、App信息收集、App测试阶段的环境干扰、质量缺陷复现、远程调试等模块,实现了可复现的移动应用程序干扰测试方法。本文提出干扰效率指标EI值并设计了其相应的计算公式,实现了量化的优化干扰测试效率的方法。本文提出的多种方法能够帮助App开发者在软件开发的各个阶段发现问题、定位问题,进而提高App的质量。本文将Android App质量提升方法、JazzDroid工具组的各个功能模块进行测试,本文介绍的方法与同领域的其他解决方案进行对比,验证质量提升系统的效果。本系统在上百个应用商店持续更新的商业App上进行效果试验,结果显示相比于通用的测试方法平均发现6倍数量的质量缺陷,一共发现了99个不同的质量缺陷,所有质量缺陷经过JazzDroid设计的复现方法确认。评估测试对所有质量缺陷进行复现,对所有质量缺陷发生的时间点和触发原因进行深入分析,提出了何时停止测试的计算方法。同时,评估测试对部分质量缺陷的触发原因进行了代码级跟踪,总结出一些常见的由干扰测试触发的质量缺陷模式。最后,评估测试对JazzDroid和质量提升方法本身的性能进行测试,证明其在开发环境和持续集成环境的可用性。
其他文献
研究路径的选择对于理解或解释公共外交问题至关重要。公共外交的起点和终点都是国家利益,只是在以实践为导向的中间环节上呈现多元化,这决定了研究的真正对象是中间环节的关
近期,日本知名旅游吉祥物“熊本熊”因在中国被抢注了商标,进而宣布在中国市场改名一事引发热议。11月11日,媒体记者登录其官网发现,“熊本熊”确实已经更名为“酷MA萌”。早在20
报纸
今天,阻碍物联网(IOT)市场发展有3大核心挑战。它们是安全性低、运营和维护成本高、无法照搬移动互联网商业模式。幸运的是,基于区块链技术的IOT万物链方案彻底解决了所有以
分析了先进控制系统在13kt/a丙烯腈装置应用的必要性及APC-Suite先控软件的具体实施方案,提高了装置的运行指标,确保了经济效益最大化。
随着社区建设的不断推进,治理理论、公民社会理论、新公共服务理论以及社工嵌入理论逐渐被学界引入社区治理,力图寻求社区善治之路。社区治理的难题在于政府行政化惯习的延续
石油充注下限是致密油成藏研究的基础。鄂尔多斯盆地富县地区长8层段致密砂岩储层微观结构十分复杂,储层微观结构是影响石油充注的关键。利用场发射扫描电镜和CT方法定量研究
主要针对钉形水泥土双向搅拌桩在市政道路软基加固中的应用展开了探讨,通过结合具体的工程实例,对钉形搅拌桩基本原理和施工工艺作了详细阐述,并对钉形搅拌桩的施工和检测作
用PowerBuilder9.0开发了一个基于XML的物种及其属性构建系统,利用该系统可以方便的构建一个物种属性,并可以对该物种属性进行解析翻译。利用该系统以物种毛白杨作为实例进行
主要针对垃圾焚烧发电工程项目施工中进度控制、质量控制、安全监理的重点和难点进行了论述,对影响工程建设的有关因素进行了分析,对有效开展垃圾焚烧发电项目建设监理工作具
随着品牌战略的日益风靡,企业为了拥有一个新的品牌,不但需要很多的成本投入,还要担心市场的未知风险。于是,许多企业选择充分运用现有品牌的优势和资源,将现有品牌的知名度