用户终端应用程序的自动分析方法及分析系统
技术领域
本发明涉及网络管理
技术领域
,具体而言,涉及一种用户终端应用程序的自动分析方法及分析系统。背景技术
目前,随着互联网技术的发展以及终端的日趋智能化,越来越多的用户通过手机等移动终端设备进行网上购物、观看新闻以及网络直播等冲浪活动。
在手机APP使用越来越广泛的同时,用户对手机APP的投诉也越来越多,如投诉手机APP的某些功能无法使用,浏览体验显示速度缓慢等。针对这些投诉,客服无法处理,需转到网管中心,网管中心技术人员进行抓包,抓包数据拷贝到电脑上,然后使用电脑的包显示程序,手工分析原始报文。根据分析得到的数据,进一步进行dns/dpi数据查询,寻找问题原因和调度、引入、缓存方案。这种人工处理方式耗时多,不能及时响应用户投诉,并且需要处理人员具有很高的专业水平,成本高。
发明内容
有鉴于此,本发明实施例的目的在于提供一种用户终端应用程序的自动分析方法及分析系统,能够通过用户脚本自动分析用户行为,提高用户投诉处理的自动化程度,降低处理投诉的专业技能需求,提高处理效率。
第一方面,本发明实施例提供了一种用户终端应用程序的自动分析方法,包括:将用户操作应用程序的用户行为制作为用户脚本,通过用户终端录制所述用户脚本;将所述用户终端录制的所述用户脚本上传至指定终端,在所述指定终端上回放所述用户脚本中记录的所述用户行为;在回放所述用户行为的过程中,分析用户终端应用程序的运行数据,实现对用户终端应用程序的性能测试,得到测试结果。
结合第一方面,本发明实施例提供了第一方面的第一种可能的实施方式,其中,该方法还包括:在得到所述测试结果之后,存储所述用户脚本和所述测试结果。
结合第一方面或第一方面的第一种可能的实施方式,本发明实施例提供了第一方面的第二种可能的实施方式,其中,该方法还包括:收集网络数据;所述网络数据包括DNS日志数据、DPI数据、网络接口流量数据、拨测数据和网络爬虫探测数据;将收集到的所述网络数据进行集成化处理,分别获取用户访问热点、流量热点和网络域名点击热点;将获取的所述用户访问热点、所述流量热点和所述网络域名点击热点通过表格、柱状堆叠图或折线图在人机交互界面进行展示。
结合第一方面的第二种可能的实施方式,本发明实施例提供了第一方面的第三种可能的实施方式,其中,获取用户访问热点,包括如下步骤:分析所述网络接口流量数据,得到分析结果;解析所述DNS日志数据,得到解析结果;整合所述网络接口流量数据的分析结果、所述DNS日志数据的解析结果、所述DPI数据、所述拨测数据和所述网络爬虫探测数据,获得用户访问热点。
结合第一方面的第二种可能的实施方式,本发明实施例提供了第一方面的第四种可能的实施方式,其中,获取流量热点,包括如下步骤:获取所述网络接口流量数据;解析DNS日志数据,得到解析结果;从所述DPI数据中采集用户的访问请求和资源类型;整合所述网络接口流量数据、所述DNS日志数据的解析结果和从所述DPI数据中采集的所述用户的访问请求和资源类型,获得流量热点。
结合第一方面的第二种可能的实施方式,本发明实施例提供了第一方面的第五种可能的实施方式,其中,获取网络域名点击热点,包括如下步骤:解析DNS日志数据,得到解析结果;从所述DNS日志数据的解析结果中采集点击量排名;从网络爬虫探测数据中采集反映网站资源分布情况的数据包,分析所述反映网站资源分布情况的数据包,得到网络资源分布情况;结合所述点击量排名和所述网络资源分布情况,得到网络域名点击热点。
第二方面,本发明实施例还提供一种用户终端应用程序自动分析系统,所述系统包括:用户脚本接收单元,用于接收用户终端录制并上传的用户脚本;用户脚本回放单元,用于回放所述用户脚本中记录的用户行为;性能测试单元,在回放所述用户行为的过程中,分析用户终端应用程序的运行数据,实现对用户终端应用程序的性能测试,得到测试结果。
结合第二方面,本发明实施例提供了第二方面的第一种可能的实施方式,其中,该系统还包括结果存储单元,用于在得到所述测试结果之后,存储所述用户脚本和所述测试结果。
结合第二方面或第二方面的第一种可能的实施方式,本发明实施例提供了第二方面的第二种可能的实施方式,其中,该系统还包括:网络数据收集单元,用于收集网络数据;所述网络数据包括DNS日志数据、DPI数据、网络接口流量数据、拨测数据和网络爬虫探测数据;流量分析单元,用于将收集到的所述网络数据进行集成化处理,分别获取用户访问热点、流量热点和网络域名点击热点;分析结果展示单元,用于将获取的所述用户访问热点、所述流量热点和所述网络域名点击热点通过表格、柱状堆叠图或折线图在人机交互界面进行展示。
结合第二方面的第二种可能的实施方式,本发明实施例提供了第二方面的第三种可能的实施方式,其中,所述流量分析单元包括:用户访问热点获取单元,用于结合网络接口流量数据、DNS日志数据、DPI数据、拨测数据和网络爬虫探测数据,获得用户访问热点;流量热点获取单元,用于结合网络接口流量数据、DNS日志数据和DPI数据,获得流量热点;网络域名点击热点获取单元,用于结合DNS日志数据和网络爬虫探测数据,获得网络域名点击热点。
本发明实施例所提供的用户终端应用程序的自动分析方法及分析系统,将用户行为制作成用户脚本,使得用户行为可以被简单的描述,并且能全天候不停的自动化回放,避免了人工多次点击回放用户行为的消耗;通过用户终端录制用户脚本后上传至指定终端,在指定终端可反复回放用户脚本,分析用户行为和应用程序的运行数据,从而实现对用户终端应用程序的性能测试。这种能够通过用户脚本自动分析用户行为的方法和系统,提高了用户投诉处理的自动化程度,降低了处理投诉的专业技能需求,提高了处理效率。
为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1示出了本发明实施例所提供的一种用户终端应用程序的自动分析方法的流程图;
图2示出了本发明实施例所提供的用户终端应用程序的自动分析方法中,在回放用户脚本之前或之后,所执行的采集和整合各种网络数据的流程图;
图3示出了本发明实施例所提供的一种用户终端应用程序自动分析系统的结构示意图;
图4示出了本发明实施例所提供的一种用户终端应用程序自动分析系统的另一部分的具体结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的模块可以以各种不同的配置来设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
目前,用户投诉手机APP的某些功能无法使用,如浏览体验显示速度缓慢等,客服无法处理,转到网管中心,技术人员进行抓包,数据拷贝到电脑上,使用电脑的包显示程序手工分析原始报文根据分析得到的数据,进一步进行dns/dpi数据查询,寻找问题原因和调度、引入、缓存方案。这种投诉处理方式,专业技术人员需要几天时间处理,耗时多;不同时间但同样的投诉仍然需要耗费同样多的精力,成本高;从爬取的海量数据中获取到有用信息,再去DNS/dpi/gn等接口中找寻原因,需要处理人员具有较高的专业水平;必须等用户反馈才能处理,不能提前预防处理。
为此,本发明一实施例的提供了一种用户终端应用程序的自动分析方法。所述用户终端可以是智能手机、平板电脑、膝上型便携计算机、车载电脑、穿戴式移动终端等等,也可以是台式计算机或一体机。该方法的流程图如图1所示,包括如下步骤。
步骤101,将用户操作应用程序的用户行为制作为用户脚本,通过用户终端录制用户脚本;
用户的行为用用户脚本描述,所述用户脚本包括视频文件片段、图片和文字描述;录制用户脚本的时候,可以使用手机端程序和计算机端程序一起进行;用户只需要在手机上按照正常流程操作一遍APP,即可录制成功;用户脚本是自动生成的,也可以对其进行编辑或修改。
步骤102,将用户终端录制的用户脚本上传至指定终端,在指定终端上回放用户脚本中记录的用户行为;在观看回放的过程中,操作人员可以进行暂停、拖动进度条、重复播放等操作。
步骤103,在回放用户行为的过程中,分析用户终端应用程序的运行数据,实现对用户终端应用程序的性能测试,得到测试结果。
通过用户脚本记录用户行为,可以重复回放用户行为,自动分析应用程序的运行数据,提高APP投诉处理的自动化程度,降低处理投诉专业技能需求,提高处理效率。同时,可以在用户发现故障之前就对用户脚本进行录制和训练,先于用户发现故障并快速排除。
为了防止针对同一问题反复测试,浪费成本,本发明另一实施例提供的方法还包括:在得到所述测试结果之后,存储所述用户脚本和所述测试结果,以便在之后再有用户投诉相同问题时,直接查询测试结果,迅速解决问题。
考虑到手机、平板电脑等终端用户每天上网都会在运营商服务器产生大量的行为数据,上述行为数据中则包含着大量的信息,例如,用户访问的网页,用户的流量耗费,以及特定时段某网站的浏览量等。为了更好地运用终端用户的大量行为数据中包含的信息,更全面地对用户终端应用程序进行分析,本发明一实施例所提供的用户终端应用程序的自动分析方法中,在回放用户脚本之前或之后,还执行了采集和整合各种网络数据的程序。如图2所示,采集和整合各种网络数据的方法具体包括如下步骤。
步骤201,收集网络数据;所述网络数据包括DNS日志数据、DPI数据、网络接口流量数据、拨测数据和网络爬虫探测数据。
步骤202,将收集到的网络数据进行集成化处理,分别获取用户访问热点、流量热点和网络域名点击热点。
其中,获取用户访问热点,包括如下步骤:分析网络接口流量数据,得到分析结果;解析DNS日志数据,得到解析结果;整合网络接口流量数据的分析结果、DNS日志数据的解析结果、DPI数据、拨测数据和网络爬虫探测数据,获得用户访问热点。
获取流量热点,包括如下步骤:获取网络接口流量数据;解析DNS日志数据,得到解析结果;从DPI数据中采集用户的访问请求和资源类型;整合网络接口流量数据、DNS日志数据的解析结果和从DPI数据中采集的所述用户的访问请求和资源类型,获得流量热点。
获取网络域名点击热点,包括如下步骤:解析DNS日志数据,得到解析结果;从DNS日志数据的解析结果中采集点击量排名;从网络爬虫探测数据中采集反映网站资源分布情况的数据包,分析反映网站资源分布情况的数据包,得到网络资源分布情况;结合点击量排名和所述网络资源分布情况,得到网络域名点击热点。
步骤203,将获取的用户访问热点、流量热点和网络域名点击热点通过表格、柱状堆叠图或折线图在人机交互界面进行展示。
该方法对多种相关大数据进行集成,各种数据相互补充,数据更准确;可视化显示web网络资源,视频资源,流量资源,更直观。结合上述的通过用户脚本分析应用程序性能的环节,通过预先分析热门APP的常用功能,对APP在本网的网络质量进行每日监控预警,能够先于用户发现故障。
与上述方法相对应,本发明实施例还提供了一种用户终端应用程序自动分析系统,如图3所示所述系统包括:用户脚本接收单元301,用于接收用户终端录制并上传的用户脚本;用户脚本回放单元302,用于回放所述用户脚本中记录的用户行为;性能测试单元303,在回放所述用户行为的过程中,分析用户终端应用程序的运行数据,实现对用户终端应用程序的性能测试,得到测试结果。
本发明的另一实施例在上述实施例的基础上,增加了结果存储单元,用于在得到所述测试结果之后,存储所述用户脚本和所述测试结果。
进一步地,本发明一实施例提供了的用户终端应用程序自动分析系统还包括如图4所示的,网络数据收集单元401,用于收集网络数据;所述网络数据包括DNS日志数据、DPI数据、网络接口流量数据、拨测数据和网络爬虫探测数据;流量分析单元402,用于将收集到的所述网络数据进行集成化处理,分别获取用户访问热点、流量热点和网络域名点击热点;分析结果展示单元403,用于将获取的所述用户访问热点、所述流量热点和所述网络域名点击热点通过表格、柱状堆叠图或折线图在人机交互界面进行展示。
其中,流量分析单元402包括:用户访问热点获取单元,用于结合网络接口流量数据、DNS日志数据、DPI数据、拨测数据和网络爬虫探测数据,获得用户访问热点;流量热点获取单元,用于结合网络接口流量数据、DNS日志数据和DPI数据,获得流量热点;网络域名点击热点获取单元,用于结合DNS日志数据和网络爬虫探测数据,获得网络域名点击热点。
所述的网络接口流量数据,其中,网络接口包括Gn接口、Gi接口等多种网络接口,以Gn接口为例,Gn接口是同一PLMN中SGSN与SGSN间以及SGSN与GGSN间的接口为Gn接口(--gsn)。该接口协议支持用户数据和有关信令的传输,支持移动性管理(MM),该接口采用的为TCP/IP协议。
所述DNS日志数据一般存放在虚拟主机的logfiles文件夹下,可以通过FTP工具将网站日志下载下来,下载下来的为log格式的文档,可通过txt文档方式查看。
人机交互界面用于根据需求展示数据,设置有APP资源管理、APP资源引入分析、资源优化分析、APP流量分析、web网站任务管理、APP任务管理、系统管理等多个模块。这些模块展示的数据来源于GN数据、DNS日志、DPI数据、探测等方式取得的各种热点数据。本发明通过不同的方式获取到数据,可视化展示页面的图形形状不同,表格增删不影响的字段。
在采用本发明的用户终端应用程序的自动分析方法和系统处理用户APP投诉时,即在出现投诉之后,立即在系统中查找用户投诉的问题是否已经或正在测试,若已测试并测试完毕,直接调用测试结果,处理用户投诉即可,若没有,则手动进行测试,操作用户行为,生成用户脚本,回放并分析应用程序的数据,完成测试并记录脚本和测试案例。在测试过程中,系统会结合底层网络拦截抓包,多层次多协议地还原分析故障原因。
需要说明的是,本发明实施例所提供的用户终端应用程序自动分析系统可以为设备上的特定硬件或者安装于设备上的软件或固件等。在本发明所提供的实施例中,应该理解到,所揭露系统和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明提供的实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
此外,术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
最后应说明的是:以上所述实施例,仅为本发明的具体实施方式,用以说明本发明的技术方案,而非对其限制,本发明的保护范围并不局限于此,尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本发明实施例技术方案的精神和范围。都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。