CN111752821B - 一种分组压测的方法、装置、计算机设备及可读存储介质 - Google Patents
一种分组压测的方法、装置、计算机设备及可读存储介质 Download PDFInfo
- Publication number
- CN111752821B CN111752821B CN201910249026.2A CN201910249026A CN111752821B CN 111752821 B CN111752821 B CN 111752821B CN 201910249026 A CN201910249026 A CN 201910249026A CN 111752821 B CN111752821 B CN 111752821B
- Authority
- CN
- China
- Prior art keywords
- interface
- pressure measurement
- measurement group
- interfaces
- dependency relationship
- 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
Links
- 238000009530 blood pressure measurement Methods 0.000 title claims abstract description 221
- 238000000034 method Methods 0.000 title claims abstract description 47
- 238000005259 measurement Methods 0.000 claims abstract description 29
- 238000012360 testing method Methods 0.000 claims description 26
- 238000010586 diagram Methods 0.000 claims description 21
- 230000006835 compression Effects 0.000 claims description 15
- 238000007906 compression Methods 0.000 claims description 15
- 238000004590 computer program Methods 0.000 claims description 12
- 238000012545 processing Methods 0.000 claims description 6
- 230000006870 function Effects 0.000 description 5
- 230000003287 optical effect Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 235000010425 Sorbus domestica Nutrition 0.000 description 1
- 240000005332 Sorbus domestica Species 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
Abstract
本发明公开了一种分组压测的方法、装置、计算机设备及可读存储介质,该方法包括:获取一个压测场景中的各个接口的接口信息,并根据所述各个接口的接口信息判断所述各个接口之间是否存在依赖关系;将具有依赖关系的各个接口划分到一个压测组中并确定出所述压测组中的各个接口的执行次序;以及,将与其他接口均没有依赖关系的接口单独的划分到一个压测组中;同时对各个压测组进行压测操作,且在一个压测组中按照各个接口的执行次序依次执行压测操作。本发明可以更加全面、准确的对一个压测场景下的各个接口进行压测操作。
Description
技术领域
本发明涉及互联网通信技术领域,具体涉及一种分组压测的方法、装置、计算机设备及可读存储介质。
背景技术
在软件开发及软件使用过程中,为了确保软件的稳定性,需要对软件进行压力测试(简称压测)。目前采用的压测方式是独立的对软件的各个接口进行压测操作,并没有考虑到各个接口之间的依赖关系。但是,在用户实际使用软件的过程中,会存在调用一个接口需要依赖另外一个接口的输出参数的情况。如果独立的对各个接口进行压测操作,就不能全面的反映出用户在使用软件过程中存在的问题,导致压测效果较差、压测结果不全面的问题。
发明内容
本发明的目的在于提供一种分组压测的方法、装置、计算机设备及可读存储介质,可以更加全面、准确的对一个压测场景下的各个接口进行压测操作。
根据本发明的一个方面,提供了一种分组压测的方法,该方法包括如下步骤:
获取一个压测场景中的各个接口的接口信息,并根据所述各个接口的接口信息判断所述各个接口之间是否存在依赖关系;
将具有依赖关系的各个接口划分到一个压测组中并确定出所述压测组中的各个接口的执行次序;以及,将与其他接口均没有依赖关系的接口单独的划分到一个压测组中;
同时对各个压测组进行压测操作,且在一个压测组中按照各个接口的执行次序依次执行压测操作。
可选的,所述获取一个压测场景中的各个接口的接口信息,具体包括:
获取在所述压测场景中新增接口的接口信息和在所述压测场景中已存接口的接口信息;
其中,接口信息包括:请求参数和输出参数。
可选的,所述根据所述各个接口的接口信息判断所述各个接口之间是否存在依赖关系,具体包括:
判断在所述新增接口的请求参数中是否包含其他已存接口的输出参数,若是,则具有依赖关系;以及,
判断所述新增接口的输出参数是否被包含在其他已存接口的请求参数中,若是,则具有依赖关系。
可选的,所述将具有依赖关系的各个接口划分到一个压测组中并确定出所述压测组中的各个接口的执行次序,具体包括:
当所述新增接口仅与一个已存接口具有依赖关系时,将所述新增接口添加到所述已存接口所在的压测组中,并根据所述依赖关系重新确定出所述压测组中的各个接口的执行次序;或者,
当所述新增接口与两个已存接口具有依赖关系时,将所述新增接口以及所述两个已存接口所在的压测组中的全部接口添加到一个新建的压测组中,并根据所述新建的压测组中的各个接口的依赖关系,确定出所述新建的压测组中的各个接口的执行次序。
可选的,所述方法还包括:
在所述同时对各个压测组进行压测操作之前,根据分组结果以及各个压测组中的每个接口的执行次序,在显示界面中绘制出分别代表各个压测组的流程示意图。
可选的,所述方法还包括:
为一个压测组中的各个接口添加统一的分组号,并根据所述压测组中的各个接口的执行次序,为所述各个接口添加对应的执行次序号。
可选的,所述据分组结果以及各个压测组中的每个接口的执行次序,在显示界面中绘制出分别代表各个压测组的流程示意图,具体包括:
获取具有相同分组号的各个接口,并根据所述各个接口的执行次序号,在所述显示界面中依次绘制代表所述各个接口的线框以及在各个线框之间绘制具有方向性的连接线。
为了实现上述目的,本发明还提供一分组压测的装置,该装置具体包括以下组成部分:
获取模块,用于获取一个压测场景中的各个接口的接口信息,并根据所述各个接口的接口信息判断所述各个接口之间是否存在依赖关系;
分组模块,用于将具有依赖关系的各个接口划分到一个压测组中并确定出所述压测组中的各个接口的执行次序;以及,将与其他接口均没有依赖关系的接口单独的划分到一个压测组中;
处理模块,用于同时对各个压测组进行压测操作,且在一个压测组中按照各个接口的执行次序依次执行压测操作。
为了实现上述目的,本发明还提供一种计算机设备,该计算机设备具体包括:存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述介绍的分组压测的方法的步骤。
为了实现上述目的,本发明还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述介绍的分组压测的方法的步骤。
本发明提供的分组压测的方法、装置、计算机设备及可读存储介质,能够根据一个压测场景下的各个接口的依赖关系,将具有依赖关系的接口划分到一个压测组中,并根据分组结果进行压测测试,从而更好的模拟出用户的真实操作;另外,每当用户添加了一个新增接口,都会根据分组结果在显示界面中动态的呈现出各个压测组的流程示意图,以反映出压测场景的接口关系示意图,以便用户检查确认各个接口的先后执行顺序,从而可以提前发现场景配置问题。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1为实施例一提供的分组压测的方法的一种可选的流程示意图;
图2为实施例一中的用户在压测平台上添加新增接口的示意图;
图3为实施例一中的用户在压测平台中配置压测场景的示意图;
图4为实施例一中的一个压测场景下的各个压测组的流程示意图;
图5为实施例一中的压测平台为用户提供的三种常用操作的示意图;
图6为实施例二提供的分组压测的装置的一种可选的程序模块示意图;
图7为实施例三提供的计算机设备的一种可选的硬件架构示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
下面结合附图对本发明提供的分组压测的方法进行说明。
图1为本发明分组压测的方法的一种可选的流程示意图,该方法应用于压测平台,且该方法具体包括以下步骤:
步骤S101:获取一个压测场景中的各个接口的接口信息,并根据所述各个接口的接口信息判断所述各个接口之间是否存在依赖关系。
具体的,所述获取一个压测场景中的各个接口的接口信息,包括:
获取在所述压测场景中新增接口的接口信息和在所述压测场景中已存接口的接口信息;
其中,接口信息包括:请求参数和输出参数。
在本实施例中,用户可以通过压测平台对一个压测场景下的多个接口同时进行压测操作;每当用户在所述压测平台中添加了一个新增接口之后,判断所述新增接口与之前添加的已存接口之间是否存在依赖关系。当用户在所述压测平台上添加新增接口时,如图2所示,需要选择接口类型和填写接口地址;当压测平台判断出接口类型为GET时,根据接口地址获取对应的请求头(Headers)信息;当压测平台判断出接口类型为POST时,根据接口地址获取对应的请求头(Headers)信息和请求体(Body)信息。需要说明的是,在本实施例中,若接口的类型为GET,则接口信息中的请求参数包括:接口地址和请求头信息;若接口的类型为POST,则接口信息中的请求参数包括:接口地址、请求头信息和请求体信息。另外,一个接口的输出参数可以是从与该接口对应的接口说明文档中提取出的,也可以是由用户在添加接口时手动输入的。
进一步的,所述方法还包括:
当接收到选择已有接口指令时,从预设的历史数据库中获取包含之前压测过的所有接口的接口列表,以供用户从所述接口列表中选择出需要添加到所述压测场景中的接口。
如图3所示,为用户在所述压测平台中配置压测场景的示意图,由此可见,用户在配置一个压测场景时需要设置场景名称、服务树节点以及添加需要压测的各个接口。当用户在所述压测场景中添加接口时,可以通过手动填写新增接口或者从接口列表中选择已有接口两种方式添加。通过从所述接口列表中选择已有接口以添加到所述压测场景中,可以节省用户时间,提高了用户的工作效率。此外,所述压测平台还可以为用户提供接口的编辑和删除功能,从而方便用户对已添加至所述压测场景中的接口进行编辑和删除操作,使得场景的设计更加灵活。
更进一步的,所述根据所述各个接口的接口信息判断所述各个接口之间是否存在依赖关系,具体包括:
判断在所述新增接口的请求参数中是否包含其他已存接口的输出参数,若是,则具有依赖关系;以及,
判断所述新增接口的输出参数是否被包含在其他已存接口的请求参数中,若是,则具有依赖关系。
例如,接口1为所述压测场景中的新增接口,且接口1的请求参数中包括字段A、接口1的输出参数中包括字段B;若所述压测场景中已添加的接口2的输出参数中包括字段A,则接口1与接口2具有依赖关系,即接口1需要依赖接口2;若所述压测场景中已添加的接口3的请求参数中包括字段B,则接口1与接口3具有依赖关系,即接口3需要依赖接口1。
步骤S102:将具有依赖关系的各个接口划分到一个压测组中并确定出所述压测组中的各个接口的执行次序;以及,将与其他接口均没有依赖关系的接口单独的划分到一个压测组中。
具体的,所述将具有依赖关系的各个接口划分到一个压测组中并确定出所述压测组中的各个接口的执行次序,包括:
当所述新增接口仅与一个已存接口具有依赖关系时,将所述新增接口添加到所述已存接口所在的压测组中,并根据所述依赖关系重新确定出所述压测组中的各个接口的执行次序;或者,
当所述新增接口与两个已存接口具有依赖关系时,将所述新增接口以及所述两个已存接口所在的压测组中的全部接口添加到一个新建的压测组中,并根据所述新建的压测组中的各个接口的依赖关系,确定出所述新建的压测组中的各个接口的执行次序。
在本实施例中,每当在所述压测平台中添加一个新增接口时,就会判断所述新增接口与之前添加的已存接口是否具有依赖关系,若是,则将具有依赖关系的接口划分到一个压测组中;若否,则将所述新增接口划分到一个新建的压测组中。由于新增接口最多只能与两个已存接口具有依赖关系,即一个已存接口依赖于所述新增接口、以及所述新增接口依赖于另一个已存接口。当所述新增接口只与一个已存接口存在依赖或被依赖关系时,将所述新增接口添加到所述已存接口所在的压测组中即可,不需要重新创建新的压测组;但由于在所述压测组中添加了新的接口,所以需要重新确定出所述压测组中的各个接口的执行次序。当所述新增接口分别与两个已存接口存在依赖和被依赖关系时,需要重新创建一个压测组,将所述新增接口以及所述两个已存接口添加到新建的压测组中,并删除所述两个已存接口之前所在的压测组。还需要说明的是,若所述两个已存接口之前所在的压测组中还有其他已存接口,需要将所述两个已存接口之前所在的压测组中的所有已存接口均添加到新建的压测组中,并重新为新建的压测组中的各个接口设置执行次序。
本实施例中的执行次序是根据各个接口之间的依赖关系确定的;例如,若接口1需要依赖接口2,则接口2需要在接口1之前执行;若接口3需要依赖接口1,则接口1需要在接口3之前执行。
步骤S103:同时对各个压测组进行压测操作,且在一个压测组中按照各个接口的执行次序依次执行压测操作。
在本实施例中,根据一个压测场景下的各个接口的依赖关系,将具有依赖关系的接口划分到一个压测组中;例如,在购物场景中,当用户选定商品并提交订单时,会跳转到订单支付接口,但是订单支付接口需要使用订单中的金额,所以需要将订单提交接口与订单支付接口放在一个压测组中进行压测操作,从而更好的模拟出用户的真实操作。当执行压测操作时,同时对各个压测组中的执行次序为1的接口进行压力测试,并根据每个压测组中的各个接口的执行次序,依次进行压力测试。
具体的,所述方法还包括:
在所述同时对各个压测组进行压测操作之前,根据分组结果以及各个压测组中的每个接口的执行次序,在显示界面中绘制出分别代表各个压测组的流程示意图。
针对一个压测组的流程示意图,包括代表所述压测组中的各个接口的线框以及代表各个接口之间的依赖关系的连接线。如图4所示,为一个压测场景下的各个压测组的流程示意图,由此可见,该压测场景包括四个压测组,其中两个压测组中只有一个接口,一个压测组中包括两个具有依赖关系的接口A和接口B,另一个压测组中包括三个具有依赖关系的接口status02、接口status03和接口status04。
进一步的,所述根据分组结果以及各个压测组中的每个接口的执行次序,在显示界面中绘制出分别代表各个压测组的流程示意图,具体包括:
步骤A1:为一个压测组中的各个接口添加统一的分组号,并根据所述压测组中的各个接口的执行次序,为所述各个接口添加对应的执行次序号;
步骤A2:获取具有相同分组号的各个接口,并根据所述各个接口的执行次序号,在所述显示界面中依次绘制代表所述各个接口的线框以及在各个线框之间绘制具有方向性的连接线。
在本实施例中,每当用户在所述压测平台中添加了一个新增接口,都会根据分组结果在所述显示界面中动态的呈现出各个压测组的流程示意图,以反映出所述压测场景的接口关系示意图,以便用户检查确认各个接口的先后执行顺序,从而可以提前发现场景配置问题。
优选的,在本实施例中,使用Cytoscape插件实现流程示意图的绘制;当使用Cytoscape插件时需要形成Cytoscape插件所需要的点集合(Nodes)和边集合(Edges)。具体的,将所述压测场景下的各个接口作为节点添加到点集合中,并根据每个接口的分组号和执行次序号,将具有依赖关系的两个接口作为一组添加到边集合中。在使用Cytoscape插件绘制流程示意图时,先从边集合中获取各个组,在所述显示界面中绘制代表各个组中的两个接口的两个线框,并在两个线框之间绘制带箭头的连接线;将仅包含在点集合中且未包含在边集合中的接口单独绘制出对应的线框。
更进一步的,如图5所示,所述压测平台为用户提供了一下三种常用操作:保存场景设置、调试和执行压测。
其中,针对保存场景设置,所述压测平台按照设定时间间隔定期获取当前的压测场景配置信息,并存储到草稿箱中;当所述压测平台接收到恢复指令时,从所述草稿箱中获取已存储的压测场景配置信息并进行显示,以供用户继续进行场景配置。
在本实施例中,当用户未点击保存场景设置的情况下,压测平台会默认暂存用户的当前场景配置操作,将场景配置信息保存为草稿状态;通过草稿箱,可以避免了由于特殊情况误关闭浏览器或者计算机而导致的数据丢失;当发生该情况时,用户在下次进入压测平台的草稿箱时,仍然可以找到上次暂存的场景配置信息;当用户点击保存场景设置后,会将该场景配置信息保存为场景压测脚本,即点击保存场景设置后会将该场景配置信息从草稿箱中删除。
针对调试功能,当用户在所述压测场景中添加完接口并分组结束时,按照分组结果以及各个分组中的各个接口的执行次序,进行正式压测前的调试操作;和实际执行压测一样,在调试时会创建压测容器,但不会一直运行,而只运行5次,以便于用户根据调试结果来发现场景配置中的问题。
执行压测功能,是场景压测的启动入口,用户启动压测操作后正式进入压测状态,并且跳转至压测报告页面,同步更新打印所有接口的压测数据信息。在本实施例中,将所有接口的曲线图信息打印在同一个二维图表中,如图6所示,从而让用户可以在同一个压测报告页面对各个接口的压测指数一目了然,也便于数据对比查看。
实施例二
基于上述实施例一中提供的分组压测的方法,本实施例中提供一种分组压测的装置,具体地,图6示出了该分组压测的装置的可选的结构框图,该分组压测的装置被分割成一个或多个程序模块,一个或者多个程序模块被存储于存储介质中,并由一个或多个处理器所执行,以完成本发明。本发明所称的程序模块是指能够完成特定功能的一系列计算机程序指令段,比程序本身更适合描述分组压测的装置在存储介质中的执行过程,以下描述将具体介绍本实施例各程序模块的功能。
如图6所示,分组压测的装置具体包括以下组成部分:
获取模块601,用于获取一个压测场景中的各个接口的接口信息,并根据所述各个接口的接口信息判断所述各个接口之间是否存在依赖关系;
分组模块602,用于将具有依赖关系的各个接口划分到一个压测组中并确定出所述压测组中的各个接口的执行次序;以及,将与其他接口均没有依赖关系的接口单独的划分到一个压测组中;
处理模块603,用于同时对各个压测组进行压测操作,且在一个压测组中按照各个接口的执行次序依次执行压测操作。
具体的,获取模块601,包括:
获取单元,用于获取在所述压测场景中新增接口的接口信息和在所述压测场景中已存接口的接口信息;其中,接口信息包括:请求参数和输出参数;
判断单元,用于判断在所述新增接口的请求参数中是否包含其他已存接口的输出参数,若是,则具有依赖关系;以及,判断所述新增接口的输出参数是否被包含在其他已存接口的请求参数中,若是,则具有依赖关系。
进一步的,分组模块602,具体用于:
当所述新增接口仅与一个已存接口具有依赖关系时,将所述新增接口添加到所述已存接口所在的压测组中,并根据所述依赖关系重新确定出所述压测组中的各个接口的执行次序;或者,当所述新增接口与两个已存接口具有依赖关系时,将所述新增接口以及所述两个已存接口所在的压测组中的全部接口添加到一个新建的压测组中,并根据所述新建的压测组中的各个接口的依赖关系,确定出所述新建的压测组中的各个接口的执行次序。
进一步的,所述装置还包括:
绘制模块,用于在所述同时对各个压测组进行压测操作之前,根据分组结果以及各个压测组中的每个接口的执行次序,在显示界面中绘制出分别代表各个压测组的流程示意图。
更进一步的,所述绘制模块,包括:
设置单元,用于为一个压测组中的各个接口添加统一的分组号,并根据所述压测组中的各个接口的执行次序,为所述各个接口添加对应的执行次序号;
绘制单元,用于获取具有相同分组号的各个接口,并根据所述各个接口的执行次序号,在所述显示界面中依次绘制代表所述各个接口的线框以及在各个线框之间绘制具有方向性的连接线。
实施例三
本实施例还提供一种计算机设备,如可以执行程序的智能手机、平板电脑、笔记本电脑、台式计算机、机架式服务器、刀片式服务器、塔式服务器或机柜式服务器(包括独立的服务器,或者多个服务器所组成的服务器集群)等。如图7所示,本实施例的计算机设备70至少包括但不限于:可通过系统总线相互通信连接的存储器701、处理器702。需要指出的是,图7仅示出了具有组件701-702的计算机设备70,但是应理解的是,并不要求实施所有示出的组件,可以替代的实施更多或者更少的组件。
本实施例中,存储器701(即可读存储介质)包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存储器、磁盘、光盘等。在一些实施例中,存储器701可以是计算机设备70的内部存储单元,例如该计算机设备70的硬盘或内存。在另一些实施例中,存储器701也可以是计算机设备70的外部存储设备,例如该计算机设备70上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。当然,存储器701还可以既包括计算机设备70的内部存储单元也包括其外部存储设备。在本实施例中,存储器701通常用于存储安装于计算机设备70的操作系统和各类应用软件,例如实施例二的分组压测的装置的程序代码等。此外,存储器701还可以用于暂时地存储已经输出或者将要输出的各类数据。
处理器702在一些实施例中可以是中央处理器(Central Processing Unit,CPU)、控制器、微控制器、微处理器、或其他数据处理芯片。该处理器702通常用于控制计算机设备70的总体操作。
具体的,在本实施例中,处理器702用于执行处理器702中存储的分组压测的方法的程序,所述分组压测的方法的程序被执行时实现如下步骤:
获取一个压测场景中的各个接口的接口信息,并根据所述各个接口的接口信息判断所述各个接口之间是否存在依赖关系;
将具有依赖关系的各个接口划分到一个压测组中并确定出所述压测组中的各个接口的执行次序;以及,将与其他接口均没有依赖关系的接口单独的划分到一个压测组中;
同时对各个压测组进行压测操作,且在一个压测组中按照各个接口的执行次序依次执行压测操作。
上述方法步骤的具体实施例过程可参见第一实施例,本实施例在此不再重复赘述。
实施例四
本实施例还提供一种计算机可读存储介质,如闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存储器、磁盘、光盘、服务器、App应用商城等等,其上存储有计算机程序,所述计算机程序被处理器执行时实现如下方法步骤:
获取一个压测场景中的各个接口的接口信息,并根据所述各个接口的接口信息判断所述各个接口之间是否存在依赖关系;
将具有依赖关系的各个接口划分到一个压测组中并确定出所述压测组中的各个接口的执行次序;以及,将与其他接口均没有依赖关系的接口单独的划分到一个压测组中;
同时对各个压测组进行压测操作,且在一个压测组中按照各个接口的执行次序依次执行压测操作。
上述方法步骤的具体实施例过程可参见第一实施例,本实施例在此不再重复赘述。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (10)
1.一种分组压测的方法,其特征在于,所述方法包括:
获取一个压测场景中的各个接口的接口信息,并根据所述各个接口的接口信息判断所述各个接口之间是否存在依赖关系;
将具有依赖关系的各个接口划分到一个压测组中并确定出所述压测组中的各个接口的执行次序;以及,将与其他接口均没有依赖关系的接口单独的划分到一个压测组中;
同时对各个压测组进行压测操作,且在一个压测组中按照各个接口的执行次序依次执行压测操作;
其中,将具有依赖关系的各个接口划分到一个压测组中并确定出所述压测组中的各个接口的执行次序,包括:
当新增接口仅与一个已存接口具有依赖关系时,将所述新增接口添加到所述已存接口所在的压测组中,并根据所述依赖关系重新确定出所述压测组中的各个接口的执行次序;或者,
当新增接口与两个已存接口具有依赖关系时,将所述新增接口以及所述两个已存接口所在的压测组中的全部接口添加到一个新建的压测组中,并根据所述新建的压测组中的各个接口的依赖关系,确定出所述新建的压测组中的各个接口的执行次序。
2.根据权利要求1所述的分组压测的方法,其特征在于,所述获取一个压测场景中的各个接口的接口信息,具体包括:
获取在所述压测场景中新增接口的接口信息和在所述压测场景中已存接口的接口信息;
其中,接口信息包括:请求参数和输出参数。
3.根据权利要求2所述的分组压测的方法,其特征在于,所述根据所述各个接口的接口信息判断所述各个接口之间是否存在依赖关系,具体包括:
判断在所述新增接口的请求参数中是否包含其他已存接口的输出参数,若是,则具有依赖关系;以及,
判断所述新增接口的输出参数是否被包含在其他已存接口的请求参数中,若是,则具有依赖关系。
4.根据权利要求1所述的分组压测的方法,其特征在于,所述方法还包括:
在所述同时对各个压测组进行压测操作之前,根据分组结果以及各个压测组中的每个接口的执行次序,在显示界面中绘制出分别代表各个压测组的流程示意图。
5.根据权利要求4所述的分组压测的方法,其特征在于,所述方法还包括:
为一个压测组中的各个接口添加统一的分组号,并根据所述压测组中的各个接口的执行次序,为所述各个接口添加对应的执行次序号。
6.根据权利要求5所述的分组压测的方法,其特征在于,所述据分组结果以及各个压测组中的每个接口的执行次序,在显示界面中绘制出分别代表各个压测组的流程示意图,具体包括:
获取具有相同分组号的各个接口,并根据所述各个接口的执行次序号,在所述显示界面中依次绘制代表所述各个接口的线框以及在各个线框之间绘制具有方向性的连接线。
7.一种分组压测的装置,其特征在于,所述装置包括:
获取模块,用于获取一个压测场景中的各个接口的接口信息,并根据所述各个接口的接口信息判断所述各个接口之间是否存在依赖关系;
分组模块,用于将具有依赖关系的各个接口划分到一个压测组中并确定出所述压测组中的各个接口的执行次序;以及,将与其他接口均没有依赖关系的接口单独的划分到一个压测组中;
处理模块,用于同时对各个压测组进行压测操作,且在一个压测组中按照各个接口的执行次序依次执行压测操作;
其中,将具有依赖关系的各个接口划分到一个压测组中并确定出所述压测组中的各个接口的执行次序,包括:
当新增接口仅与一个已存接口具有依赖关系时,将所述新增接口添加到所述已存接口所在的压测组中,并根据所述依赖关系重新确定出所述压测组中的各个接口的执行次序;或者,
当新增接口与两个已存接口具有依赖关系时,将所述新增接口以及所述两个已存接口所在的压测组中的全部接口添加到一个新建的压测组中,并根据所述新建的压测组中的各个接口的依赖关系,确定出所述新建的压测组中的各个接口的执行次序。
8.一种计算机设备,所述计算机设备包括:存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至6任一项所述方法的步骤。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至6任一项所述方法的步骤。
10.一种计算机程序产品,包括计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至6任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910249026.2A CN111752821B (zh) | 2019-03-29 | 一种分组压测的方法、装置、计算机设备及可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910249026.2A CN111752821B (zh) | 2019-03-29 | 一种分组压测的方法、装置、计算机设备及可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111752821A CN111752821A (zh) | 2020-10-09 |
CN111752821B true CN111752821B (zh) | 2024-06-04 |
Family
ID=
Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8549522B1 (en) * | 2007-07-19 | 2013-10-01 | American Megatrends, Inc. | Automated testing environment framework for testing data storage systems |
US9201763B1 (en) * | 2013-05-31 | 2015-12-01 | The Mathworks, Inc. | Efficient sharing of test fixtures and ordering of test suites |
CN105138461A (zh) * | 2015-09-23 | 2015-12-09 | 网易(杭州)网络有限公司 | 一种应用程序的接口测试方法及装置 |
CN105824746A (zh) * | 2015-01-05 | 2016-08-03 | 中国移动(深圳)有限公司 | 一种基于用例依赖关系自动生成测试调度的方法和装置 |
CN105975397A (zh) * | 2016-07-18 | 2016-09-28 | 浪潮(北京)电子信息产业有限公司 | 一种基于TestNG的集成测试方法及系统 |
CN107329861A (zh) * | 2017-06-12 | 2017-11-07 | 北京奇安信科技有限公司 | 一种多接口测试方法及装置 |
CN107957952A (zh) * | 2017-12-18 | 2018-04-24 | 马上消费金融股份有限公司 | 一种接口测试方法、装置及介质 |
CN108153670A (zh) * | 2017-11-30 | 2018-06-12 | 北京奇艺世纪科技有限公司 | 一种接口测试方法、装置及电子设备 |
CN108197027A (zh) * | 2017-12-29 | 2018-06-22 | 广州景派科技有限公司 | 软件性能优化方法、可存储介质、计算机、计算机程序 |
CN109101418A (zh) * | 2018-07-18 | 2018-12-28 | 中国空间技术研究院 | 一种基于信息流交互特性的卫星能源管理软件测试方法 |
CN109471795A (zh) * | 2018-10-16 | 2019-03-15 | 平安普惠企业管理有限公司 | 分组测试方法、装置、计算机设备及存储介质 |
CN109491777A (zh) * | 2018-11-12 | 2019-03-19 | 北京字节跳动网络技术有限公司 | 任务执行方法、装置、设备及存储介质 |
CN109491903A (zh) * | 2018-11-02 | 2019-03-19 | 郑州云海信息技术有限公司 | 一种自动测试脚本拼接处理方法、装置、终端及存储介质 |
Patent Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8549522B1 (en) * | 2007-07-19 | 2013-10-01 | American Megatrends, Inc. | Automated testing environment framework for testing data storage systems |
US9201763B1 (en) * | 2013-05-31 | 2015-12-01 | The Mathworks, Inc. | Efficient sharing of test fixtures and ordering of test suites |
CN105824746A (zh) * | 2015-01-05 | 2016-08-03 | 中国移动(深圳)有限公司 | 一种基于用例依赖关系自动生成测试调度的方法和装置 |
CN105138461A (zh) * | 2015-09-23 | 2015-12-09 | 网易(杭州)网络有限公司 | 一种应用程序的接口测试方法及装置 |
CN105975397A (zh) * | 2016-07-18 | 2016-09-28 | 浪潮(北京)电子信息产业有限公司 | 一种基于TestNG的集成测试方法及系统 |
CN107329861A (zh) * | 2017-06-12 | 2017-11-07 | 北京奇安信科技有限公司 | 一种多接口测试方法及装置 |
CN108153670A (zh) * | 2017-11-30 | 2018-06-12 | 北京奇艺世纪科技有限公司 | 一种接口测试方法、装置及电子设备 |
CN107957952A (zh) * | 2017-12-18 | 2018-04-24 | 马上消费金融股份有限公司 | 一种接口测试方法、装置及介质 |
CN108197027A (zh) * | 2017-12-29 | 2018-06-22 | 广州景派科技有限公司 | 软件性能优化方法、可存储介质、计算机、计算机程序 |
CN109101418A (zh) * | 2018-07-18 | 2018-12-28 | 中国空间技术研究院 | 一种基于信息流交互特性的卫星能源管理软件测试方法 |
CN109471795A (zh) * | 2018-10-16 | 2019-03-15 | 平安普惠企业管理有限公司 | 分组测试方法、装置、计算机设备及存储介质 |
CN109491903A (zh) * | 2018-11-02 | 2019-03-19 | 郑州云海信息技术有限公司 | 一种自动测试脚本拼接处理方法、装置、终端及存储介质 |
CN109491777A (zh) * | 2018-11-12 | 2019-03-19 | 北京字节跳动网络技术有限公司 | 任务执行方法、装置、设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111290956B (zh) | 基于脑图的测试方法、装置、电子设备及存储介质 | |
CN110928802A (zh) | 基于自动生成用例的测试方法、装置、设备及存储介质 | |
CN108255701B (zh) | 场景测试方法及移动终端 | |
CN110781372B (zh) | 一种优化网站的方法、装置、计算机设备及存储介质 | |
CN113220657B (zh) | 数据处理方法、装置及计算机设备 | |
CN110599354A (zh) | 线上对账方法、系统、计算机设备和计算机可读存储介质 | |
CN113377667B (zh) | 一种基于场景的测试方法、装置、计算机设备及存储介质 | |
EP3805917A1 (en) | Upgrade method and device | |
CN108427639B (zh) | 自动化测试方法、应用服务器及计算机可读存储介质 | |
CN110750443A (zh) | 网页测试的方法、装置、计算机设备及存储介质 | |
CN111752821B (zh) | 一种分组压测的方法、装置、计算机设备及可读存储介质 | |
CN111159226A (zh) | 指标查询方法及系统 | |
CN114546432A (zh) | 一种多应用的部署方法、装置、设备及可读存储介质 | |
CN111752821A (zh) | 一种分组压测的方法、装置、计算机设备及可读存储介质 | |
CN111400245B (zh) | 美术资源迁移方法及装置 | |
CN114817152A (zh) | 切片文件的查询方法与系统 | |
CN114564213A (zh) | 预装软件部署方法、系统、终端及存储介质 | |
CN114169306A (zh) | 一种生成电子回执单的方法、装置、设备及可读存储介质 | |
CN112465604A (zh) | 一种分发订单的方法、装置、计算机设备及计算机可读存储介质 | |
CN112433950A (zh) | 自动搭建测试环境的方法、电子设备及存储介质 | |
CN111638905A (zh) | 版本号的生成方法、装置、电子设备及可读存储介质 | |
CN111190575A (zh) | 一种构造接口的方法、系统、介质及设备 | |
CN113010424B (zh) | 接口自动化测试处理方法、系统、计算机设备与存储介质 | |
CN112835803B (zh) | 工具生成方法、测试数据构造方法、装置、设备及介质 | |
CN111444057A (zh) | 页面性能数据采集方法、装置及计算设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant |