CN107766224B - 测试方法和测试装置 - Google Patents

测试方法和测试装置 Download PDF

Info

Publication number
CN107766224B
CN107766224B CN201711084805.9A CN201711084805A CN107766224B CN 107766224 B CN107766224 B CN 107766224B CN 201711084805 A CN201711084805 A CN 201711084805A CN 107766224 B CN107766224 B CN 107766224B
Authority
CN
China
Prior art keywords
preset
coefficient
request instruction
url
grade
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201711084805.9A
Other languages
English (en)
Other versions
CN107766224A (zh
Inventor
张润琦
李琴
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Baidu Netcom Science and Technology Co Ltd
Original Assignee
Beijing Baidu Netcom Science and Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Baidu Netcom Science and Technology Co Ltd filed Critical Beijing Baidu Netcom Science and Technology Co Ltd
Priority to CN201711084805.9A priority Critical patent/CN107766224B/zh
Publication of CN107766224A publication Critical patent/CN107766224A/zh
Application granted granted Critical
Publication of CN107766224B publication Critical patent/CN107766224B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3452Performance evaluation by statistical analysis

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Probability & Statistics with Applications (AREA)
  • Evolutionary Biology (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Computer Hardware Design (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Quality & Reliability (AREA)
  • General Physics & Mathematics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本申请实施例公开了测试方法和测试装置。该方法的一具体实施方式包括:获取应用发送的请求指令,其中,请求指令包括统一资源定位符URL;根据预设关键字集合,对URL进行聚类分析,以确定URL的权重系数;获取与请求指令相关的反馈信息的参数信息;根据参数信息和预设参数,确定请求指令的等级系数;根据权重系数和等级系数,确定请求指令的测试数据,并生成测试数据集合。该实施方式通过分析确定应用发送的请求指令的权重系数和等级系数,从而可以得到各请求指令的测试数据,进而生成该应用的测试数据集合。这样,有助于提高应用性能问题的定位准确度,从而可以提升性能改善的效率和质量。

Description

测试方法和测试装置
技术领域
本申请实施例涉及计算机技术领域,具体涉及性能测试技术领域,尤其涉及测试方法和测试装置。
背景技术
性能测试一般是指通过自动化的测试工具模拟多种正常、峰值以及异常负载条件来对系统的各项性能指标进行测试。性能测试在软件的质量保证中起着重要的作用,它包括的测试内容丰富多样。
负载测试和压力测试都属于性能测试,两者可以结合进行。通过负载测试,确定在各种工作负载下系统的性能,目标是测试当负载逐渐增加时,系统各项性能指标的变化情况。压力测试是通过确定一个系统的瓶颈或者不能接受的性能点,来获得系统能提供的最大服务级别的测试。
发明内容
本申请实施例提出了测试方法和测试装置。
第一方面,本申请实施例提供了一种测试方法,包括:获取应用发送的请求指令,其中,请求指令包括统一资源定位符URL;根据预设关键字集合,对URL进行聚类分析,以确定URL的权重系数;获取与请求指令相关的反馈信息的参数信息;根据参数信息和预设参数,确定请求指令的等级系数;根据权重系数和等级系数,确定请求指令的测试数据,并生成测试数据集合。
在一些实施例中,根据预设关键字集合,对URL进行聚类分析,以确定URL的权重系数,包括:将预设关键字集合中的关键字与URL进行聚类分析;若URL与预设关键字集合中的关键字属于相同的聚类簇,进一步判断URL中是否存在与预设关键字集合中的关键字匹配的字符串;根据判断结果,确定URL的权重系数。
在一些实施例中,参数信息包括反馈信息的状态码;以及根据参数信息和预设参数,确定请求指令的等级系数,包括:判断状态码是否小于预设状态码;响应于判断结果为不小于,则确定请求指令的等级系数为第一等级系数。
在一些实施例中,参数信息包括反馈信息的响应时长;以及根据参数信息和预设参数,确定请求指令的等级系数,包括:判断响应时长是否在预设时长范围内;响应于判断结果为在,则将预设时长范围对应的第二等级系数作为请求指令的等级系数。
在一些实施例中,参数信息包括反馈信息的资源值;以及根据参数信息和预设参数,确定请求指令的等级系数,包括:判断资源值是否在预设值范围内;响应于判断结果为在,则将预设值范围对应的第三等级系数作为请求指令的等级系数。
在一些实施例中,预设值范围包括上限预设值范围;以及响应于判断结果为在,则将预设值范围对应的第三等级系数作为请求指令的等级系数,包括:响应于判断结果为在上限预设值范围内,判断反馈信息是否为下载链接;响应于判断结果为是,进一步确定下载链接指示的下载内容是否满足第一预设条件;响应于确定满足,则将上限预设值范围对应的第三等级系数作为请求指令的等级系数。
在一些实施例中,根据参数信息和预设参数,确定请求指令的等级系数,还包括:从第一等级系数、第二等级系数和第三等级系数中选取等级系数,作为请求指令的等级系数。
在一些实施例中,根据预设关键字集合,对URL进行聚类分析,以确定URL的权重系数,包括:判断请求指令是否满足第二预设条件;响应于判断结果为满足,则根据预设关键字集合,对URL进行聚类分析,以确定URL的权重系数。
第二方面,本申请实施例提供了一种测试装置,包括:第一获取单元,配置用于获取应用发送的请求指令,其中,请求指令包括统一资源定位符URL;聚类单元,配置用于根据预设关键字集合,对URL进行聚类分析,以确定URL的权重系数;第二获取单元,配置用于获取与请求指令相关的反馈信息的参数信息;确定单元,配置用于根据参数信息和预设参数,确定请求指令的等级系数;生成单元,配置用于根据权重系数和等级系数,确定请求指令的测试数据,并生成测试数据集合。
在一些实施例中,聚类单元包括:聚类子单元,配置用于将预设关键字集合中的关键字与URL进行聚类分析;判断子单元,配置用于若URL与预设关键字集合中的关键字属于相同的聚类簇,进一步判断URL中是否存在与预设关键字集合中的关键字匹配的字符串;确定子单元,配置用于根据判断结果,确定URL的权重系数。
在一些实施例中,参数信息包括反馈信息的状态码;以及确定单元包括:第一判断子单元,配置用于判断状态码是否小于预设状态码;第一确定子单元,配置用于响应于判断结果为不小于,则确定请求指令的等级系数为第一等级系数。
在一些实施例中,参数信息包括反馈信息的响应时长;以及确定单元包括:第二判断子单元,配置用于判断响应时长是否在预设时长范围内;第二确定子单元,配置用于响应于判断结果为在,则将预设时长范围对应的第二等级系数作为请求指令的等级系数。
在一些实施例中,参数信息包括反馈信息的资源值;以及确定单元包括:第三判断子单元,配置用于判断资源值是否在预设值范围内;第三确定子单元,配置用于响应于判断结果为在,则将预设值范围对应的第三等级系数作为请求指令的等级系数。
在一些实施例中,预设值范围包括上限预设值范围;以及第三确定子单元进一步配置用于:响应于判断结果为在上限预设值范围内,判断反馈信息是否为下载链接;响应于判断结果为是,进一步确定下载链接指示的下载内容是否满足第一预设条件;响应于确定满足,则将上限预设值范围对应的第三等级系数作为请求指令的等级系数。
在一些实施例中,确定单元还包括:选取子单元,配置用于从第一等级系数、第二等级系数和第三等级系数中选取等级系数,作为请求指令的等级系数。
在一些实施例中,聚类单元进一步配置用于:判断请求指令是否满足第二预设条件;响应于判断结果为满足,则根据预设关键字集合,对URL进行聚类分析,以确定URL的权重系数。
第三方面,本申请实施例提供了一种电子设备,包括:一个或多个处理器;存储装置,用于存储一个或多个程序;当一个或多个程序被一个或多个处理器执行,使得一个或多个处理器实现如上述第一方面中任一实施例所描述的方法。
第四方面,本申请实施例提供了一种计算机可读存储介质,其上存储有计算机程序。其中,该计算机程序被处理器执行时实现如上述第一方面中任一实施例所描述的方法。
本申请实施例提供的测试方法和测试装置,通过获取应用发送的请求指令中的URL,可以根据预设关键字集合,对URL进行聚类分析,从而可以确定该URL的权重系数。同时,通过获取与该请求指令相关的反馈信息的参数信息以及预设参数,可以确定该请求指令的等级系数。进而,根据权重系数和等级系数,可以确定该请求指令的测试数据,并生成测试数据集合。利用这些测试数据,有助于提高应用性能问题的定位准确度,从而可以提升性能改善的效率和质量。
附图说明
通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:
图1是本申请可以应用于其中的示例性系统架构图;
图2是根据本申请的测试方法的一个实施例的流程图;
图3是根据本申请的测试方法的一个应用场景的示意图;
图4是根据本申请的测试装置的一个实施例的结构示意图;
图5是适于用来实现本申请实施例的电子设备的计算机系统的结构示意图。
具体实施方式
下面结合附图和实施例对本申请作进一步的详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释相关发明,而非对该发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与有关发明相关的部分。
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。
图1示出了可以应用本申请的人测试方法或测试装置的示例性系统架构100。
如图1所示,系统架构100可以包括终端101、102、103,网络104、106,代理服务器105和服务器107、108。网络104用以在终端101、102、103与代理服务器105之间提供通信链路的介质。网络106用以在代理服务器105与服务器107、108之间提供通信链路的介质。网络104、106可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
用户可以使用终端101、102、103通过网络104、106与代理服务器105、服务器107、108进行交互,以接收或发送消息等。终端101、102、103上可以安装有各种客户端应用,例如网页浏览器应用、安全杀毒类应用、即时通讯工具和购物类应用等。
终端101、102、103可以是具有显示屏的各种电子设备,包括但不限于智能手机、平板电脑、电子书阅读器、膝上型便携计算机和台式计算机等等。
服务器107、108可以是提供各种服务的服务器,例如对终端101、102、103上的应用提供支持的后台服务器。后台服务器可以对终端101、102、103上的应用所发送的请求指令进行分析处理,并且可以将处理结果(如与请求指令相关的反馈信息)发送给终端101、102、103。
代理服务器105也可以是提供各种服务的服务器,例如对终端101、102、103上的应用所发送的请求指令进行转发的中间服务器。此外,代理服务器105还可以是对终端101、102、103上的应用进行性能测试的测试服务器。此时,测试服务器可以捕获应用所发送的请求指令,同时可以捕获服务器107、108发送的反馈信息。通过对请求指令和反馈信息进行分析处理,可以将测试结果(如测试数据集合)发送给终端101、102、103。
需要说明的是,本申请实施例所提供的测试方法一般由代理服务器105执行,相应地,测试装置一般设置于代理服务器105中。
需要指出的是,当代理服务器105具有服务器107、108的功能时,系统架构100可以不设置服务器107、108。
应该理解,图1中的终端、网络、代理服务器和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端、网络、代理服务器和服务器。
继续参考图2,示出了根据本申请的测试方法的一个实施例的流程200。该测试方法可以包括以下步骤:
步骤201,获取应用发送的请求指令。
在本实施例中,测试方法运行于其上的电子设备(例如图1所示的代理服务器105)可以通过多种方法来获取终端(例如图1所示的终端101、102、103)上安装的应用所发送的请求指令。其中,请求指令可以包括URL(统一资源定位符,Uniform Resource Locator)。这里的请求指令可以是用于请求获取网页、视频、图片、文本等信息的指令。
作为示例,电子设备可以通过网络爬虫技术来抓取终端的应用发送给服务器(例如图1所示的服务器107、108)的请求指令。网络爬虫,又被称为网页蜘蛛或网络机器人,通常是一种按照一定的规则,自动的抓取万维网信息的程序或者脚本。网络爬虫技术现已被广泛应用于互联网领域,此处不再赘述。
再例如,电子设备可以是基于反向代理技术而建立的代理服务器,如Nginx(engine x)。其中,Nginx是一个高性能的HTTP(超文本传输协议,Hyper Text TransportProtocol)和反向代理服务器。在将终端上的应用与电子设备进行配置连接的情况下,应用发送的所有请求指令都需要通过电子设备进行转发,如转发给服务器。这样,电子设备在转发请求指令的同时,可以获取并存储该请求指令。
这里的请求指令可以是用户在实际使用应用的过程中发送的请求指令,即用户对终端进行相应的操作而触发的。例如用户点击应用界面的某一位置,或者在应用的搜索框内输入搜索信息等。请求指令也可以是模拟用户行为对应用进行测试的过程中发送的请求指令。例如终端上可以预先存储有测试人员编写的测试程序。在测试程序的控制下,会使应用发送预设的请求指令。
可以理解的是,目前大部分互联网协议都是HTTP协议。而且在HTTP协议中,几乎所有的请求都是通过“POST”方法来实现的。“POST”方法是HTTP协议中的一个重要组成部分,一般用来向服务器上传递数据。因此,与网络爬虫技术相比,通过代理服务器的方法有助于保证捕获最全面的请求指令,可以提高捕获率和覆盖率。而且配置代理服务器,是无感的接入过程,不会影响应用的正常使用,也就不会影响用户体验,并且有利于降低测试成本。
步骤202,根据预设关键字集合,对URL进行聚类分析,以确定URL的权重系数。
在本实施例中,电子设备可以对步骤201获取的URL进行切词等处理。然后,根据预设关键字集合中的关键字,对切词处理后的URL进行聚类分析,从而确定该URL的权重系数。
在本实施例的一些可选地实现方式,预设关键字集合中可以包括至少一个第一关键字和至少一个第二关键字。其中,第一关键字可以是与应用直接相关的关键字,而第二关键字可以是与应用间接相关的关键字。例如应用为“**安全卫士”,此时,第一关键字可以是“**”,第二关键字可以是不包含“**”的关键字,如杀毒、安全等。
这样,将URL与第一关键字、第二关键字进行聚类分析。如果URL与第一关键字属于相同的聚类簇,说明该ULR与应用直接相关。那么可以给该URL设置较高的权重系数(如1)。如果URL与第二关键字属于相同的聚类簇,说明该URL与应用间接相关。那么可以给该URL设置较低的权重系数(如0.5)。如果URL没有与预设关键字集合中的任一关键字属于相同的聚类簇,说明该URL与应用不相关或关联度很低。为了提高测试的准确度,电子设备可以在本地删除该URL,或不对该URL进行后续处理。
可选地,电子设备可以将预设关键字集合中的关键字与URL进行聚类分析。若URL与预设关键字集合中的关键字属于相同的聚类簇,则可以进一步判断该URL中是否存在与预设关键字集合中的关键字匹配的字符串。进而根据判断结果,可以确定URL的权重系数。也就是说,如果URL与关键字属于相同的聚类簇,说明该URL与应用相关。如果URL与关键字不属于相同的聚类簇,说明该URL与应用不相关,或关联度很低。
进一步地,如果ULR中存在与关键字匹配的字符串,说明该URL与应用直接相关,可以给该URL设置较高的权重系数。如果URL中不存在与关键字匹配的字符串,说明该URL与应用间接相关,可以给该URL设置较低的权重系数。
可以理解的是,通过预设关键字集合对URL进行聚类,可以起到对获取的URL进行筛选的作用,从而剔除无效的URL。这样,有助于提高测试的效率和准确度。同时,上述预设关键字集合中的关键字和上述权重系数可以根据实际需求设置。而且与应用直接相关的资源通常由应用的研发团队负责,而与应用间接相关的资源(如友情链接)往往来自于应用的合作方。相比之下,与应用直接相关的资源对用户体验的影响更为重要。
为了进一步地提高处理效率,在对URL进行聚类分析之前,电子设备可以先判断请求指令是否满足第二预设条件。在判断结果为满足的情况下,再根据预设关键字集合,对URL进行聚类分析,以确定URL的权重系数。这里的第二预设条件在本申请中并不限制,如可以是请求指令为有效指令。进而可以剔除无效的请求指令。
此外,电子设备可以利用现有的常用技术手段来判断请求指令是否有效。例如,电子设备可以查看请求指令中的“POST”函数的参数值是否为空(NULL)。如果为空,说明该请求指令是无效的。
步骤203,获取与请求指令相关的反馈信息的参数信息。
在本实施例中,电子设备在确定请求指令的权重系数之后,同样可以通过多种方法来获取与该请求指令相关的反馈信息的参数信息。例如通过网络爬虫来捕获,或通过代理服务器的拦截转发来获取。这里的反馈信息可以是与请求指令请求获取的信息相关的信息,如网页、视频、图片或文本等。而参数信息可以是用于描述反馈信息的信息,可以包括以下至少一项:反馈信息的状态码、响应时长和资源值(即资源大小)等。
步骤204,根据参数信息和预设参数,确定请求指令的等级系数。
在本实施例中,电子设备根据步骤203获取的参数信息以及对应的预设参数,可以确定请求指令的等级系数。其中,预设参数是与参数信息相对应的参数,具体数值在本申请中并不限制。等级系数主要指通过测试来定位问题的风险等级所对应的系数。风险等级可以包括(但不限于)高危风险、中危风险和低危风险。
在本实施例的一些可选地实现方式中,参数信息可以包括反馈信息的状态码。此时,电子设备可以判断状态码是否小于预设状态码。若判断结果为不小于,则可以确定请求指令的等级系数为第一等级系数。例如预设状态码可以为400。如果反馈信息的状态码小于400,说明对该请求指令的处理正常,无风险。此时可以不设置等级系数,或者确定等级系数为0。如果反馈信息的状态码大于或等于400,说明对该请求指令的处理存在问题,属于高危风险。此时,可以确定请求指令的等级系数为高危风险对应的第一等级系数(如1)。
需要说明的是,返回的状态码为400或以上属于死链接,体现在用户层面上为资源不可用,需要剔除或替换。通过判断状态码,可以有效地发现此类问题,从而减少或避免漏测的情况发生。
可选地,参数信息可以包括反馈信息的响应时长。此时,电子设备可以判断响应时长是否在预设时长范围内。若判断结果为在,则可以将预设时长范围对应的第二等级系数作为请求指令的等级系数。例如预设时长范围可以分别为(0,3)、(3,5)、(5,8)和(8,+∞),单位为秒(s)。如果响应时长小于3s,说明该响应时长正常,确定请求指令无风险。如果响应时长在3s与5s之间,说明该响应时长可以接受,确定请求指令为低危风险,第二等级系数可以为0.5。如果响应时长在5s与8s之间,则确定请求指令为中危风险,第二等级系数可以为0.7。如果响应时长大于8s,确定请求指令为高危风险,第二等级系数可以为1。
需要说明的是,资源响应时长3s、5s和8s是本技术领域比较公认的判断标准时长。小于3s满意度高,3s到5s之间可以接受,但会考虑行业竞争产品之间的比较。大于5s则无法接受。单一底层资源的理论响应时长必须要小于3s,这样才能保证前端等多层依赖其之上的封装和调用的耗时。因此,通过测试响应时长,可以更加容易地定位到底层问题,从而缩短测试环节和测试时长。
在一些应用场景中,参数信息还可以包括反馈信息的资源值(资源大小)。此时,电子设备可以判断资源值是否在预设值范围内。若判断结果为在,则可以将预设值范围对应的第三等级系数作为请求指令的等级系数。例如预设值范围可以包括(0,500K)、(500K,1M)、(1M,10M)和(10M,+∞)。其中,K(KB)和M均为资讯计量单位,分别表示千字节和兆。如果资源值小于500K,确定请求指令无风险。如果资源值在500K与1M之间,确定请求指令为低危风险,第三等级系数可以为0.5。如果资源值在1M与10M之间,确定请求指令为中危风险,第三等级系数可以为0.7。如果资源值大于10M,确定请求指令为高危风险,第三等级系数可以为1。
进一步地,为了提高问题定位的准确度,当资源值大于10M时,说明该反馈信息很可能为下载链接。此时,可以对反馈信息作进一步分析,来确定请求指令的等级系数。
作为示例,预设值范围可以包括上限预设值范围,如上述(10M,+∞)。电子设备在判断资源值在上限预设值范围内的情况下,可以判断反馈信息是否为下载链接。若判断结果为是,则可以进一步确定下载链接指示的下载内容是否满足第一预设条件。若确定满足,则可以将上限预设值范围对应的第三等级系数(如1)作为请求指令的等级系数。在这里,判断信息是否为下载链接的技术是现有的成熟技术,可以市售的,此处不再赘述。而第一预设条件可以根据实际情况设置,例如可以是下载内容存在安全问题。此时,电子设备可以采用现有的常用技术手段来检测下载内容是否有病毒、插件等安全问题。如果检测出存在这些安全问题,说明下载内容满足第一预设条件。
需要说明的是,反馈信息的资源大小往往直接决定了用户的流量消耗。频繁的下载必然会导致终端电量损耗加快。这通常是高功耗问题的根源。因此,通过测试反馈信息的资源值,有助于提高功耗问题的定位准确度和定位效率。
可以理解的是,通过上述参数信息的测试过程,对于一个请求指令,电子设备可以在状态码、响应时长和资源值的三个维度,分别得到该请求指令的等级系数(第一等级系数、第二等级系数和第三等级系数)。此时,电子设备可以根据三个维度的等级系数作进一步分析来得到该请求指令最终的等级系数。例如,电子设备可以将三个维度的等级系数之和,或者加权之和作为最终的等级系数。再例如,电子设备可以从第一等级系数、第二等级系数和第三等级系数中选取等级系数,作为请求指令最终的等级系数。
在这里,电子设备可以根据高危优先原则和同级先出现优先原则来选取。例如请求指令A在状态码、响应时长和资源值三个维度的风险等级分别为高危、高危和中危。其中,在时间上电子设备先测试出状态码的风险等级。由于三个维度中存在高危,所以选取高危风险等级对应的系数作为请求指令A的等级系数。又由于状态码和响应时长两个维度均为高危风险等级,且状态码的高危风险等级先测试出,所以电子设备可以选取先测试出的状态码的高危风险等级对应的系数作为请求指令A的等级系数。这样可以保证一个请求指令只属于风险等级中的一种,且是其中最严重的一种风险等级,从而避免测试结果重复或出现漏测问题。
另外,为了提高测试效率,当电子设备同时或在一段时间内获取到多个请求指令时,可以根据参数信息,对这些请求指令进行聚类。也就是说,可以将这些请求指令在状态码、响应时长和资源值三个维度分别进行聚类。例如,根据预设状态码,将状态码小于400的反馈信息所对应的请求指令聚类为同一簇。这样,在确定请求指令的等级系数时,属于该簇的所有请求指令均为无风险,而无需逐一测试。
步骤205,根据权重系数和等级系数,确定请求指令的测试数据,并生成测试数据集合。
在本实施例中,电子设备可以根据步骤202确定的权重系数和步骤204确定的等级系数,按照预设的计算方法来确定请求指令的测试数据,并生成测试数据集合。在这里,预设的计算方法可以是各种运算方法,如将权重系数(如1或0.5)与等级系数(如1、0.7或0.5)相乘。其中,测试数据可以是用于描述请求指令的测试结果的数据。例如测试数据可以包括URL和预设的计算方法的计算结果(如1、0.7、0.5、0.35或0.25)。
可选地,电子设备还可以对测试数据集合中的测试数据进行排序,如按照计算结果由高到低(即风险等级由高到低)的顺序。并将排序后的测试数据集合发送给终端,以使终端将排序后的测试数据展现给用户或测试人员,从而可以作为调整应用的参考数据。这样,有助于提高应用性能问题的定位准确度,从而可以提升性能改善的效率和质量。
本实施例提供的测试方法,通过获取应用发送的请求指令中的URL,可以根据预设关键字集合,对URL进行聚类分析,从而可以确定该URL的权重系数。同时,通过获取与该请求指令相关的反馈信息的参数信息以及预设参数,可以确定该请求指令的等级系数。进而,根据权重系数和等级系数,可以确定该请求指令的测试数据,并生成测试数据集合。利用这些测试数据,有助于提高应用性能问题的定位准确度,从而可以提升性能改善的效率和质量。
进一步参见图3,图3是根据本实施例的测试方法的应用场景的一个示意图。在图3的应用场景中,测试人员可以在终端31上安装某应用,然后通过该应用发送多个请求指令311。服务器32在获取这些请求指令311之后,首先可以选取有效的URL;然后对有效的URL进行聚类,以确定其权重系数321;接着可以获取与请求指令相关的反馈信息的参数信息322,以确定其等级系数323;最后可以根据每个请求指令的权重系数321和等级系数323,确定其测试数据,进而生成测试数据集合324。并且服务器32可以将测试数据集合324中的测试数据按照风险等级由高到低排序后发送给终端31。这样,测试人员可以根据终端31显示的测试数据集合,来判断该应用的性能问题,从而调整改进该应用。
继续参见图4,作为对上述各图所示方法的实现,本申请提供了一种测试装置的一个实施例。该装置实施例与图2所示的方法实施例相对应,该装置具体可以应用于各种电子设备中。
如图4所示,本实施例的测试装置400可以包括:第一获取单元401,配置用于获取应用发送的请求指令,其中,请求指令包括统一资源定位符URL;聚类单元402,配置用于根据预设关键字集合,对URL进行聚类分析,以确定URL的权重系数;第二获取单元403,配置用于获取与请求指令相关的反馈信息的参数信息;确定单元404,配置用于根据参数信息和预设参数,确定请求指令的等级系数;生成单元405,配置用于根据权重系数和等级系数,确定请求指令的测试数据,并生成测试数据集合。
在本实施例中,第一获取单元401、聚类单元402、第二获取单元403、确定单元404和生成单元405的具体实现方式及产生的有益效果,可以分别参见图2所示实施例中的步骤201、步骤202、步骤203、步骤204和步骤205的相关描述,此处不再赘述。
在本实施例的一些可选的实现方式中,聚类单元402可以包括:聚类子单元(图中未示出),配置用于将预设关键字集合中的关键字与URL进行聚类分析;判断子单元(图中未示出),配置用于若URL与预设关键字集合中的关键字属于相同的聚类簇,进一步判断URL中是否存在与预设关键字集合中的关键字匹配的字符串;确定子单元(图中未示出),配置用于根据判断结果,确定URL的权重系数。
可选地,参数信息可以包括反馈信息的状态码;以及确定单元404可以包括:第一判断子单元(图中未示出),配置用于判断状态码是否小于预设状态码;第一确定子单元(图中未示出),配置用于响应于判断结果为不小于,则确定请求指令的等级系数为第一等级系数。
可选地,参数信息可以包括反馈信息的响应时长;以及确定单元404可以包括:第二判断子单元(图中未示出),配置用于判断响应时长是否在预设时长范围内;第二确定子单元(图中未示出),配置用于响应于判断结果为在,则将预设时长范围对应的第二等级系数作为请求指令的等级系数。
进一步地,参数信息还可以包括反馈信息的资源值;以及确定单元404还可以包括:第三判断子单元(图中未示出),配置用于判断资源值是否在预设值范围内;第三确定子单元(图中未示出),配置用于响应于判断结果为在,则将预设值范围对应的第三等级系数作为请求指令的等级系数。
作为示例,预设值范围可以包括上限预设值范围;以及第三确定子单元可以进一步配置用于:响应于判断结果为在上限预设值范围内,判断反馈信息是否为下载链接;响应于判断结果为是,进一步确定下载链接指示的下载内容是否满足第一预设条件;响应于确定满足,则将上限预设值范围对应的第三等级系数作为请求指令的等级系数。
在一些实施例中,确定单元404还可以包括:选取子单元(图中未示出),配置用于从第一等级系数、第二等级系数和第三等级系数中选取等级系数,作为请求指令的等级系数。
在一些应用场景中,聚类单元402可以进一步配置用于:判断请求指令是否满足第二预设条件;响应于判断结果为满足,则根据预设关键字集合,对URL进行聚类分析,以确定URL的权重系数。
下面参考图5,其示出了适于用来实现本申请实施例的电子设备的计算机系统500的结构示意图。图5示出的电子设备仅仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。
如图5所示,计算机系统500包括中央处理单元(CPU)501,其可以根据存储在只读存储器(ROM)502中的程序或者从存储部分508加载到随机访问存储器(RAM)503中的程序而执行各种适当的动作和处理。在RAM 503中,还存储有系统500操作所需的各种程序和数据。CPU 501、ROM 502以及RAM 503通过总线504彼此相连。输入/输出(I/O)接口505也连接至总线504。
以下部件连接至I/O接口505:包括触摸屏、键盘、鼠标等的输入部分506;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分507;包括硬盘等的存储部分508;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分509。通信部分509经由诸如因特网的网络执行通信处理。驱动器510也根据需要连接至I/O接口505。可拆卸介质511,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器510上,以便于从其上读出的计算机程序根据需要被安装入存储部分508。
特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分509从网络上被下载和安装,和/或从可拆卸介质511被安装。在该计算机程序被中央处理单元(CPU)501执行时,执行本申请的方法中限定的上述功能。需要说明的是,本申请的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本申请中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本申请中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、RF等等,或者上述的任意合适的组合。
附图中的流程图和框图,图示了按照本申请各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本申请实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的单元也可以设置在处理器中,例如,可以描述为:一种处理器包括第一获取单元、聚类单元、第二获取单元、确定单元和生成单元。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定,例如,第一获取单元还可以被描述为“获取应用发送的请求指令的单元”。
作为另一方面,本申请还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该电子设备执行时,使得该电子设备:获取应用发送的请求指令,其中,请求指令包括统一资源定位符URL;根据预设关键字集合,对URL进行聚类分析,以确定URL的权重系数;获取与请求指令相关的反馈信息的参数信息;根据参数信息和预设参数,确定请求指令的等级系数;根据权重系数和等级系数,确定请求指令的测试数据,并生成测试数据集合。
以上描述仅为本申请的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本申请中所涉及的发明范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述发明构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本申请中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。

Claims (15)

1.一种测试方法,包括:
获取应用发送的请求指令,其中,所述请求指令包括统一资源定位符URL;
根据预设关键字集合,对所述URL进行切词处理,根据切词处理后的URL进行聚类分析,以确定所述URL的权重系数;
获取与所述请求指令相关的反馈信息的参数信息;
根据所述参数信息和预设参数,确定所述请求指令的等级系数;
根据所述权重系数和所述等级系数,确定所述请求指令的测试数据,并生成测试数据集合。
2.根据权利要求1所述的方法,其中,所述根据预设关键字集合,对所述URL进行聚类分析,以确定所述URL的权重系数,包括:
将预设关键字集合中的关键字与所述URL进行聚类分析;
若所述URL与所述预设关键字集合中的关键字属于相同的聚类簇,进一步判断所述URL中是否存在与所述预设关键字集合中的关键字匹配的字符串;
根据判断结果,确定所述URL的权重系数。
3.根据权利要求1所述的方法,其中,所述参数信息包括所述反馈信息的状态码;以及
所述根据所述参数信息和预设参数,确定所述请求指令的等级系数,包括:
判断所述状态码是否小于预设状态码;
响应于判断结果为不小于,则确定所述请求指令的等级系数为第一等级系数。
4.根据权利要求3所述的方法,其中,所述参数信息包括所述反馈信息的响应时长;以及
所述根据所述参数信息和预设参数,确定所述请求指令的等级系数,包括:
判断所述响应时长是否在预设时长范围内;
响应于判断结果为在,则将所述预设时长范围对应的第二等级系数作为所述请求指令的等级系数。
5.根据权利要求4所述的方法,其中,所述参数信息包括所述反馈信息的资源值;以及
所述根据所述参数信息和预设参数,确定所述请求指令的等级系数,包括:
判断所述资源值是否在预设值范围内;
响应于判断结果为在,则将所述预设值范围对应的第三等级系数作为所述请求指令的等级系数。
6.根据权利要求5所述的方法,其中,所述预设值范围包括上限预设值范围;以及
所述响应于判断结果为在,则将所述预设值范围对应的第三等级系数作为所述请求指令的等级系数,包括:
响应于判断结果为在所述上限预设值范围内,判断所述反馈信息是否为下载链接;
响应于判断结果为是,进一步确定所述下载链接指示的下载内容是否满足第一预设条件;
响应于确定满足,则将所述上限预设值范围对应的第三等级系数作为所述请求指令的等级系数。
7.根据权利要求5所述的方法,其中,所述根据所述参数信息和预设参数,确定所述请求指令的等级系数,还包括:
从所述第一等级系数、所述第二等级系数和所述第三等级系数中选取等级系数,作为所述请求指令的等级系数。
8.根据权利要求1所述的方法,其中,所述根据预设关键字集合,对所述URL进行聚类分析,以确定所述URL的权重系数,包括:
判断所述请求指令是否满足第二预设条件;
响应于判断结果为满足,则根据预设关键字集合,对所述URL进行聚类分析,以确定所述URL的权重系数。
9.一种测试装置,包括:
第一获取单元,配置用于获取应用发送的请求指令,其中,所述请求指令包括统一资源定位符URL;
聚类单元,配置用于根据预设关键字集合,对所述URL进行切词处理,根据切词处理后的URL进行聚类分析,以确定所述URL的权重系数;
第二获取单元,配置用于获取与所述请求指令相关的反馈信息的参数信息;
确定单元,配置用于根据所述参数信息和预设参数,确定所述请求指令的等级系数;
生成单元,配置用于根据所述权重系数和所述等级系数,确定所述请求指令的测试数据,并生成测试数据集合。
10.根据权利要求9所述的装置,其中,所述聚类单元包括:
聚类子单元,配置用于将预设关键字集合中的关键字与所述URL进行聚类分析;
判断子单元,配置用于若所述URL与所述预设关键字集合中的关键字属于相同的聚类簇,进一步判断所述URL中是否存在与所述预设关键字集合中的关键字匹配的字符串;
确定子单元,配置用于根据判断结果,确定所述URL的权重系数。
11.根据权利要求9所述的装置,其中,所述参数信息包括所述反馈信息的状态码;以及
所述确定单元包括:
第一判断子单元,配置用于判断所述状态码是否小于预设状态码;
第一确定子单元,配置用于响应于判断结果为不小于,则确定所述请求指令的等级系数为第一等级系数。
12.根据权利要求11所述的装置,其中,所述参数信息包括所述反馈信息的响应时长;以及
所述确定单元包括:
第二判断子单元,配置用于判断所述响应时长是否在预设时长范围内;
第二确定子单元,配置用于响应于判断结果为在,则将所述预设时长范围对应的第二等级系数作为所述请求指令的等级系数。
13.根据权利要求12所述的装置,其中,所述参数信息包括所述反馈信息的资源值;以及
所述确定单元包括:
第三判断子单元,配置用于判断所述资源值是否在预设值范围内;
第三确定子单元,配置用于响应于判断结果为在,则将所述预设值范围对应的第三等级系数作为所述请求指令的等级系数。
14.一种电子设备,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-8中任一所述的方法。
15.一种计算机可读存储介质,其上存储有计算机程序,其中,所述计算机程序被处理器执行时实现如权利要求1-8中任一所述的方法。
CN201711084805.9A 2017-11-07 2017-11-07 测试方法和测试装置 Active CN107766224B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201711084805.9A CN107766224B (zh) 2017-11-07 2017-11-07 测试方法和测试装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201711084805.9A CN107766224B (zh) 2017-11-07 2017-11-07 测试方法和测试装置

Publications (2)

Publication Number Publication Date
CN107766224A CN107766224A (zh) 2018-03-06
CN107766224B true CN107766224B (zh) 2020-12-08

Family

ID=61273627

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201711084805.9A Active CN107766224B (zh) 2017-11-07 2017-11-07 测试方法和测试装置

Country Status (1)

Country Link
CN (1) CN107766224B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109379588B (zh) * 2018-12-29 2020-11-03 广州敏视数码科技有限公司 一种用于高清dvr的自动化测试方法及系统
CN111435452B (zh) * 2019-01-11 2023-11-03 百度在线网络技术(北京)有限公司 模型训练方法、装置、设备和介质
CN111240948A (zh) * 2019-11-18 2020-06-05 北京博睿宏远数据科技股份有限公司 一种体验数据处理方法、装置、计算机设备及存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101778013A (zh) * 2009-12-28 2010-07-14 北京世纪互联宽带数据中心有限公司 网站测试系统及方法
CN101854335A (zh) * 2009-03-30 2010-10-06 华为技术有限公司 一种过滤的方法、系统及网络设备
CN104899131A (zh) * 2014-03-04 2015-09-09 腾讯科技(深圳)有限公司 一种对浏览器中网页加载的检测方法、装置及移动终端
CN105117340A (zh) * 2015-08-31 2015-12-02 国家计算机网络与信息安全管理中心 用于iOS浏览器应用质量评估的URL检测方法和装置
CN106209488A (zh) * 2015-04-28 2016-12-07 北京瀚思安信科技有限公司 用于检测网站攻击的方法和设备

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8972376B1 (en) * 2013-01-02 2015-03-03 Palo Alto Networks, Inc. Optimized web domains classification based on progressive crawling with clustering

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101854335A (zh) * 2009-03-30 2010-10-06 华为技术有限公司 一种过滤的方法、系统及网络设备
CN101778013A (zh) * 2009-12-28 2010-07-14 北京世纪互联宽带数据中心有限公司 网站测试系统及方法
CN104899131A (zh) * 2014-03-04 2015-09-09 腾讯科技(深圳)有限公司 一种对浏览器中网页加载的检测方法、装置及移动终端
CN106209488A (zh) * 2015-04-28 2016-12-07 北京瀚思安信科技有限公司 用于检测网站攻击的方法和设备
CN105117340A (zh) * 2015-08-31 2015-12-02 国家计算机网络与信息安全管理中心 用于iOS浏览器应用质量评估的URL检测方法和装置

Also Published As

Publication number Publication date
CN107766224A (zh) 2018-03-06

Similar Documents

Publication Publication Date Title
US10812358B2 (en) Performance-based content delivery
US10027739B1 (en) Performance-based content delivery
WO2016173200A1 (zh) 用于检测恶意网址的方法和系统
CN107480277B (zh) 用于网站日志采集的方法及装置
CN106911693B (zh) 用于检测网页内容劫持的方法、装置和终端设备
CN109976995B (zh) 用于测试的方法和装置
US9785710B2 (en) Automatic crawling of encoded dynamic URLs
CN108667770B (zh) 一种网站的漏洞测试方法、服务器及系统
CN107766224B (zh) 测试方法和测试装置
CN106897336A (zh) 网页文件发送方法、网页渲染方法及装置、网页渲染系统
CN104021154B (zh) 一种在浏览器中进行搜索的方法和装置
CN110929128A (zh) 一种数据爬取方法、装置、设备和介质
US10594550B2 (en) Dynamic product installation based on user feedback
CN109670100B (zh) 一种页面数据抓取方法及装置
JP6199844B2 (ja) 被疑箇所推定装置及び被疑箇所推定方法
CN117040799A (zh) 页面拦截规则生成、页面访问控制方法、装置及电子设备
CN111338928A (zh) 基于chrome浏览器测试的方法及装置
CN112749351A (zh) 链接地址确定方法、装置、计算机可读存储介质及设备
CN115495740A (zh) 一种病毒检测方法和装置
CN110569424A (zh) 一种信息推介的方法和装置
CN107918737B (zh) 压力测试数据的传输方法、装置及系统
CN111767447A (zh) 用于确定用户流量路径的方法和装置
CN111651356A (zh) 一种应用程序测试方法、装置及系统
CN111240948A (zh) 一种体验数据处理方法、装置、计算机设备及存储介质
CN111898046B (zh) 重定向管理的方法和装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant