一种用于客户端的分析网页问题的方法和系统技术方案

技术编号:17561801 阅读:28 留言:0更新日期:2018-03-28 12:18
本发明专利技术公开了一种用于客户端的分析网页问题的方法和系统,通过在关键步骤处插桩构建插桩脚本并构建日志输出脚本,实现网页运行动态信息的捕捉和记录,通过将所述插桩脚本和日志输出脚本发送至客户端从而使得客户端能够以日志形式记录网页运行过程中的相关信息,所述相关信息用于进行网页问题的分析。本发明专利技术能够获取到全面的用于分析网页问题的信息,进而提升网页分析的效率,快速定位导致网页问题的漏洞。此外,本发明专利技术不阻碍客户端程序的执行,不影响客户端的用户体验。

A method and system for client based analysis of web pages

The invention discloses a method and system for analysis of web client problems, the key steps in the construction of pile inserting instrumentation script and construct the log output script, realize the dynamic information of \operation to capture and record, the script and the pile inserted to send the log output to the client so that the client can foot to log the information\ in the operation process, the relevant information for the analysis of the problem of \. The invention can obtain comprehensive information for the analysis of web pages, improve the efficiency of web page analysis, and quickly locate the vulnerability of web pages. In addition, the invention does not impede the execution of the client program and does not affect the user experience of the client.

【技术实现步骤摘要】
一种用于客户端的分析网页问题的方法和系统
本专利技术涉及客户端测试领域,尤其涉及一种用于客户端的分析网页问题的方法和系统。
技术介绍
在PC客户端或移动客户端中,通常通过内置精简的浏览器内核实现依托于web页面的有关功能,但是这种精简的的浏览器内核只能够提供基本的浏览网页的功能,而舍弃了一些对于用户而言并不适用的功能,比如javascript脚本调试,debug日志打印和异常处理,而这些功能对于分析网页问题却是非常必要的,这些功能的缺失导致了客户端没有较好的开发调试功能,在出现网页问题时难以定位引发网页问题的漏洞。客户端网页环境千差万别,在用户使用web页面的过程中有可能会遇到各种使用问题,而这些问题有较大的可能与网页环境有关,因此,在开发人员在自己的环境中得不到复现,从而导致了开发人员难以定位导致这些问题的漏洞。虽然开发人员可以通过远程操作客户端来复现这些问题,但因为客户端缺少开发调试的功能,开发人员只能看到问题的表象,依然难以定位导致这些问题的漏洞。现有技术中,通常采用调试代理工具(fiddler)抓包或通过在网页上弹出消息对话框来定位客户端的漏洞。但是调试代理工具只能判断文件是否加载成功以及后台接口返回数据时候正确,而对于由于网页控件不支持或脚本撰写错误而导致的网页问题无能为力;而通过弹出消息对话框定位漏洞的方法不仅会阻塞程序执行导致效率低下,而且由于难以对交互数据进行捕捉,也无法全面定位网页漏洞。
技术实现思路
为了解决上述技术问题,本专利技术提出了一种用于客户端的分析网页问题的方法和系统,通过在关键步骤处插桩并自动生成日志,从而获取全面的用于分析网页问题的信息,进而提升网页分析的效率,快速定位导致网页问题的漏洞。本专利技术具体是以如下技术方案实现的:一种用于客户端的分析网页问题的方法,所述方法包括:定位用于实现网页业务的关键步骤,在所述关键步骤处插桩构建插桩脚本,所述插桩脚本用于探测所述关键步骤的执行结果;构建日志输出脚本,所述日志输出脚本用于获取所述执行结果并根据所述执行结果输出日志;将所述插桩脚本和日志输出脚本发送至客户端;所述客户端运行所述插桩脚本和日志输出脚本;根据所述客户端在网页运行过程中生成的日志分析网页问题。进一步地,所述插桩包括设置数据捕捉接口和/或响应捕捉接口,所述数据捕捉接口用于捕捉客户端与服务器的交互数据;所述响应捕捉接口用于捕捉客户端在网页运行过程中执行操作指令的结果。进一步地,所述关键步骤包括:加载页面框架、加载样式表、加载脚本文件、脚本初始化、调用服务端接口、调用业务逻辑接口、页面渲染、接受用户操作和/或显示操作结果。进一步地,还包括将客户端生成的日志上传至服务器。进一步地,还包括在所述客户端的网页上显示用户交互界面,所述用户交互界面用于与用户交互并呈现所述客户端生成的日志。在客户端运行网页之前,包括:将用于展现所述用户交互界面的脚本发送至所述客户端,所述脚本包括html脚本和样式表。进一步地,还包括:获取用户输入的网页运行对象,所述网页运行对象包括用户选择的脚本和/或用户直接输入的代码;执行所述网页运行对象;获取所述网页运行对象的执行结果并根据所述执行结果生成日志。一种用于客户端的分析网页问题的系统,包括服务器和客户端,包括:网页错误分析模块,用于根据所述客户端在网页运行过程中生成的日志分析网页问题;所述服务器包括:插桩脚本构建模块,用于定位用于实现网页业务的关键步骤并在所述关键步骤处插桩构建插桩脚本,所述插桩脚本用于探测所述关键步骤的执行结果;日志输出脚本构建模块,用于构建日志输出脚本,所述日志输出脚本用于获取所述执行结果并根据所述执行结果输出日志;发送模块,用于将所述插桩脚本和日志输出脚本发送至客户端;所述客户端包括:接收模块,用于接收所述插桩脚本和所述日志输出脚本;运行模块,用于运行所述插桩脚本和日志输出脚本。进一步地,所述插桩脚本构建模块包括数据捕捉接口设置单元和/或响应捕捉接口设置单元,所述数据捕捉接口设置单元用于设置数据捕捉接口,所述数据捕捉接口用于捕捉客户端与服务器的交互数据;所述响应捕捉接口设置单元用于设置响应捕捉接口,所述响应捕捉接口用于捕捉客户端在网页运行过程中执行操作指令的结果。进一步地,所述网页错误分析模块设置于服务器,所述客户端还包括日志上传模块,用于将客户端生成的日志上传至服务器。进一步地,所述客户端还包括交互模块,所述交互模块用于在所述客户端的网页上显示用户交互界面,所述用户交互界面用于与用户交互并呈现所述客户端生成的日志。进一步地,所述客户端还包括:网页运行对象获取模块,用于获取用户输入的网页运行对象,所述网页运行对象包括用户选择的脚本和/或用户直接输入的代码;所述运行模块还用于执行所述网页运行对象、获取所述网页运行对象的执行结果以及根据所述执行结果生成日志。本专利技术的一种用于客户端的分析网页问题的方法和系统,具有如下有益效果:(1)获取全面的用于分析网页问题的信息,从而提升网页分析的效率,快速定位导致网页问题的漏洞;(2)不阻碍客户端程序的执行,不影响客户端的用户体验。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它附图。图1是本专利技术实施例1提供的一种用于客户端的分析网页问题的方法流程图;图2是本专利技术实施例2提供的remote-debug对话框示意图;图3是本专利技术实施例3提供的一种用于客户端的分析网页问题的系统的总体框图;图4是本专利技术实施例3提供的插桩脚本构建模块3011的框图;图5是本专利技术实施例4提供的一种用于客户端的分析网页问题的系统的总体框图;图6是本专利技术实施例4提供的另一种用于客户端的分析网页问题的系统的总体框图。具体实施方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有作出创造性劳动的前提下所获得的所有其他实施例,都属于本专利技术保护的范围。实施例1:一种用于客户端的分析网页问题的方法,如图1所示,所述方法包括:S101.定位用于实现网页业务的关键步骤,在所述关键步骤处插桩构建插桩脚本,所述插桩脚本用于探测所述关键步骤的执行结果。具体地,由网页开发人员根据网页的业务运行逻辑选择用于实现网页业务的关键步骤。所述关键步骤既可以为业务流程中的关键步骤,也可以为容易出现错误的步骤。比如,网页中某些控件的使用依赖于网页运行环境,而在不同的运行环境中所述控件加载结果有可能不同。鉴于客户端的运行环境较为复杂且多种多样,这种控件加载失败的可能性也较大,因此,这种控件的加载也属于关键步骤。具体地,所述关键步骤包括:加载页面框架、加载样式表、加载脚本文件、脚本初始化、调用服务端接口、调用业务逻辑接口、页面渲染、接受用户操作和/或显示操作结果。相应地,所述插桩包括设置数据捕捉接口和/或响应捕捉接口,所述数据捕捉接口用于捕捉客户端与服务器的交互数据;所述响应捕捉接口用于捕捉客户端在网页运行过程中执行操作本文档来自技高网...
一种用于客户端的分析网页问题的方法和系统

【技术保护点】
一种用于客户端的分析网页问题的方法,其特征在于,所述方法包括:定位用于实现网页业务的关键步骤,在所述关键步骤处插桩构建插桩脚本,所述插桩脚本用于探测所述关键步骤的执行结果;构建日志输出脚本,所述日志输出脚本用于获取所述执行结果并根据所述执行结果输出日志;将所述插桩脚本和日志输出脚本发送至客户端;所述客户端运行所述插桩脚本和日志输出脚本;根据所述客户端在网页运行过程中生成的日志分析网页问题。

【技术特征摘要】
1.一种用于客户端的分析网页问题的方法,其特征在于,所述方法包括:定位用于实现网页业务的关键步骤,在所述关键步骤处插桩构建插桩脚本,所述插桩脚本用于探测所述关键步骤的执行结果;构建日志输出脚本,所述日志输出脚本用于获取所述执行结果并根据所述执行结果输出日志;将所述插桩脚本和日志输出脚本发送至客户端;所述客户端运行所述插桩脚本和日志输出脚本;根据所述客户端在网页运行过程中生成的日志分析网页问题。2.根据权利要求1所述的方法,其特征在于,所述插桩包括设置数据捕捉接口和/或响应捕捉接口,所述数据捕捉接口用于捕捉客户端与服务器的交互数据;所述响应捕捉接口用于捕捉客户端在网页运行过程中执行操作指令的结果。3.根据权利要求1所述的方法,其特征在于,所述关键步骤包括:加载页面框架、加载样式表、加载脚本文件、脚本初始化、调用服务端接口、调用业务逻辑接口、页面渲染、接受用户操作和/或显示操作结果。4.根据权利要求1所述的方法,其特征在于,还包括将客户端生成的日志上传至服务器。5.根据权利要求4所述的方法,其特征在于,还包括在所述客户端的网页上显示用户交互界面,所述用户交互界面用于与用户交互并呈现所述客户端生成的日志。6.根据权利要求5所述的方法,其特征在于,在客户端运行网页之前,包括:将用于展现所述用户交互界面的脚本发送至所述客户端,所述脚本包括html脚本和样式表。7.根据权利要求5所述的方法,其特征在于,还包括:获取用户输入的网页运行对象,所述网页运行对象包括用户选择的脚本和/或用户直接输入的代码;执行所述网页运行对象;获取所述网页运行对象的执行结果并根据所述执行结果生成日志。8.一种用于客户端的分析网页问题的系统,包括服务器和客户端,...

【专利技术属性】
技术研发人员:王少飞
申请(专利权)人:腾讯科技深圳有限公司
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1