Although the developers try their best to improve the quality of software, deployed softwares are still have bugs. For client-side javascript application, as its event driven paradigm and dynamic characteristics of javascript language, deployed client side javascript applications are prone to various program errors. To improve the quality of deployed client-side javascript application, this project aims to explore the mechanism to debug and analyze field javascript failures based on capture/replay. Specifically, we will propose a novel remote debugging framework for client-side javascript application, which supports to replay the execution directly on the client; a new approach to reproduce javascript failures quickly based on checkpoint and selective replay; new javascript fault localization techniques based on statistical debug to locate the relevant statements and locate failure-relevant input based on dynamic taint analysis, and a novel mutable replay mechanism to support patch validation. We believe the result of this project will further improve the reliability of client-side javascript application and reduce its maintenance cost.
尽管软件开发者不断提高代码的质量,部署发布后的软件仍然存在bug。对于客户端JavaScript(JS)应用,由于采用事件驱动的执行模型以及JS语言本身的动态特性,导致其在实际运行时更易出现错误。为提高部署后的客户端JS应用的可靠性,课题研究提出一套基于捕获/重放机制的JS错误远程调试方法与分析技术。具体内容包括:基于捕获/重放机制的客户端JS应用远程调试框架,支持直接在客户端进行确定性重放;基于检查点和选择性重放的客户端JS应用错误快速重现技术;基于统计调试和动态污点分析的客户端JS应用bug分析和定位技术,支持发现引起错误的相关语句和相关输入;基于可变重放技术的bug修复确认机制;并在关键技术研究的基础上开发相应的原型工具。开发人员可以利用这套方法和工具,对实际部署后的客户端JS应用错误进行调试和分析,从而提高客户端JS应用调试的自动化程度和调试效率,降低系统维护成本。
云服务已经成为使用软件功能的一种主要形式。为了使用云服务提供的功能,通常需要使用各种客户端。目前主流的客户端形态包括Web应用和移动应用。对于Web应用,由于不同浏览器对Web标准的遵循程度不同,导致同一Web应用在不同浏览器上运行时出现行为、布局以及内容等方面的不一致;对于移动应用,由于采用事件驱动的多线程执行模型,移动应用在运行时可能出现由于调度不确定引发的并发错误。此外,由于android生态系统的碎片化,导致移动应用的兼容性问题十分普遍。.为提高客户端应用(客户端Web应用、移动应用)的兼容性和可靠性,课题主要开展了研究基于录制重放技术的客户应用调试与分析技术。主要的研究内容包括:基于录制重放技术的客户端Web应用、移动应用的兼容性问题自动检测、Web应用兼容性问题的分析与诊断、android应用并发错误的确认与重现研究,以及布局兼容性问题的自动修复技术。.课题的主要研究结果包括:1)提出一种基于录制/重放技术的Web应用兼容性问题的自动检测方法并形成工具原型,与已有方法相比,提高了检测结果的准确性;2)提出一种面向众包测试的android应用的轻型录制重放技术,支持自动检测android应用兼容性问题;3)提出一种基于录制重放技术的Web应用兼容性问题诊断技术,支持准确定位由于不兼容的JS API、CSS属性和HTML片段引发的兼容性问题;4)提出一种基于可变重放技术的移动应用并发错误重现和确认方法;5)提出一种结合搜索和机器学习的布局兼容性问题修复方法,支持布局兼容性问题的准确和快速修复。课题的研究成果将进一步提高客户端应用的兼容性和可靠性
{{i.achievement_title}}
数据更新时间:2023-05-31
中外学术论文与期刊的宏观差距分析及改进建议
多种监测手段在滑坡变形中的组合应用
考虑故障处理过程信息系统连通性和准确性的配电网可靠性评估
Haynes282合金中不同元素含量对析出相析出行为的影响
杂臂星形共聚物研究的近期新进展
基于信息技术的建筑环境声场仿真、重放和应用
基于场景的电子医疗信息的记录机制与信息重放方法研究
基于事件曝光模型的云服务测试与调试研究
听觉距离定位因素及其在空间声重放中的应用