应用程序的性能测试方法、装置、计算机设备和存储介质与流程

文档序号:13685662阅读:175来源:国知局
应用程序的性能测试方法、装置、计算机设备和存储介质与流程

本申请涉及计算机技术领域,特别是涉及一种应用程序的性能测试方法、装置、计算机设备和存储介质。



背景技术:

应用程序在发布之前需要进行性能测试以验证是否达到预期的性能指标。性能测试包括客户端性能测试和服务端性能测试。在服务端性能测试中,传统的测试平台只支持应用程序单一接口的性能测试。而一个业务场景的性能测试通常需要对多个接口同时进行性能测试,传统的测试平台无法满足这一测试需求。



技术实现要素:

基于此,有必要针对上述技术问题,提供一种能够对一个业务场景中的多个接口同时进行性能测试的应用程序的性能测试方法、装置、计算机设备和存储介质。

一种应用程序的性能测试方法,包括:

通过主节点接收终端发送的业务场景的性能测试请求,所述性能测试请求中携带了业务场景对应的配置信息;

主节点根据所述配置信息获取对应的测试用例以及利用所述配置信息生成对应的测试代码;

通过主节点将所述测试代码和测试用例分发至多个从节点;以使得所述从节点调用多个线程根据测试代码和测试用例对所述业务场景的多个接口执行性能测试;

通过主节点接收多个从节点返回的测试数据,利用所述测试数据生成测试报告。

在其中一个实施例中,所述方法还包括:

当单个接口在性能测试中的错误率达到第一阈值时,从节点的线程退出单个接口对应的性能测试;利用从节点记录对应的测试数据;或者

主节点根据单个接口对应线程步进数量和步进频率,记录对单个接口执行性能测试的线程数量;当所述单个接口对应的线程数量达到第二阈值时,多个从节点的线程退出所述单个接口的性能测试,利用从节点记录对应的测试数据。

在其中一个实施例中,所述业务场景包括混合业务场景和单业务场景;所述方法还包括:

当业务场景为混合业务场景时,通过所述主节点将所述混合业务场景拆分为多个单业务场景;

通过主节点获取多个单业务场景对应的测试用例和测试代码;

通过主节点将多个单业务场景对应的测试用例和测试代码分发至多个从节点,以使得所述从节点对多个单业务场景执行性能测试。

在其中一个实施例中,所述通过主节点将多个单业务场景对应的测试用例和测试代码分发至多个从节点,以使得所述从节点对多个单业务场景执行性能测试的步骤包括:

通过主节点获取每个从节点的空余线程数量;

主节点根据所述空余线程数量将多个单业务场景的测试用例和测试代码分发至相应的从节点,以使得每个从节点对多个单业务场景执行性能测试。

在其中一个实施例中,所述主节点根据所述空余线程数量将多个单业务场景的测试用例和测试代码分发至相应的从节点的步骤,包括:

获取每个从节点的空余线程数量对应的加权系数;

若从节点数量大于拆分得到的多个单业务场景的数量,所述主节点根据单业务场景对应的接口数量和所述加权系数为单业务场景选择一个或多个从节点;

将所述单业务场景对应的测试用例和测试代码分发至相应从节点。

在其中一个实施例中,所述方法还包括:

新增从节点向所述主节点发送新增节点标识;

所述主节点根据所述新增从节点标识向所述新增从节点发送初始化命令;

所述新增从节点执行所述初始化命令,初始化完成后,所述新增从节点接收主节点分发的测试用例和测试代码,执行与业务场景对应的性能测试。

一种应用程序的性能测试装置,包括:

主节点,用于接收终端发送的业务场景的性能测试请求,所述性能测试请求中携带了业务场景对应的配置信息;根据所述配置信息获取对应的测试用例以及利用所述配置信息生成对应的测试代码;将所述测试代码和测试用例分发至多个从节点;

从节点,用于运行多个线程,通过线程利用测试代码和测试用例对所述业务场景的多个接口执行性能测试;

所述主节点还用于接收多个从节点返回的测试数据,利用所述测试数据生成测试报告。

在其中一个实施例中,所述业务场景包括混合业务场景和单业务场景;当业务场景为混合业务场景时,所述主节点还用于将所述混合业务场景拆分为多个单业务场景;获取多个单业务场景对应的测试用例和测试代码;将多个单业务场景对应的测试用例和测试代码分发至多个从节点;所述从节点还用于调用多个线程对多个单业务场景执行性能测试。

一种计算机设备,包括存储器及处理器,所述存储器中储存有计算机程序,所述指令被所述处理器执行时,使得所述处理器执行上述任一项方法的步骤。

一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如上述任一项方法的步骤。

上述应用程序的性能测试方法、装置、计算机设备和存储介质,当需要对应用程序的业务场景进行性能测试时,可以通过终端将业务场景对应的配置信息发送至服务器集群中的主节点。主节点根据配置信息获取相应的测试用例以及生成相应的测试代码。主节点将测试用例和测试代码并行分发至多个从节点。每个从节点调用多个线程利用测试代码和测试用例对业务场景的多个接口执行性能测试。由于采用了服务器集群的方式对应用程序进行服务端性能测试,从而能够使得业务场景中的多个接口的性能测试能够通过不同从节点的多个线程同时进行测试。当业务场景的性能测试结束后,从节点记录每个线程对应的测试数据,并将测试数据返回至主节点。主节点通过对多个从节点返回的测试数据进行统计,进而生成相应的测试报告。由于测试数据来自多个节点的多个线程,由此能够更加全面和准确的反映业务场景性能测试的实际状况,从而能够有效提高测试的准确性。

附图说明

图1为一个实施例中应用程序的性能测试方法的应用场景图;

图2为一个实施例中应用程序的性能测试方法的流程图;

图3为一个实施例中应用程序的性能测试装置的框图;

图4为一个实施例中主节点的框图。

具体实施方式

为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。

本申请提供的应用程序的性能测试方法可以应用于如图1所示的应用场景中。终端102通过网络与服务器集群104进行通信连接。服务器集群104包括一个主节点和多个从节点。主节点可以与终端102进行通信。测试人员通过终端102访问主节点,主节点向终端102返回应用程序性能测试所对应的业务场景管理页面。在该页面中,测试人员可以对不同业务场景的测试需求进行配置。当主节点获取到业务场景对应的配置信息时,根据配置信息获取对应的测试用例以及利用配置信息生成对应的测试代码。主节点可以将业务场景对应的测试用例和测试代码分发至多个从节点,从节点调用多个线程利用测试用例和测试代码对业务场景的多个接口进行性能测试。当线程退出测试时,从节点记录测试数据,并将测试数据返回至主节点。主节点对多个从节点返回的测试数据进行统计,生成相应的性能测试报告。

在一个实施例中,如图2所示,提供了一种应用程序的性能测试方法,以该方法应用于服务器集群为例进行说明,该方法包括以下步骤:

步骤202,通过主节点接收终端发送的业务场景的性能测试请求,性能测试请求中携带了业务场景对应的配置信息。

步骤204,主节点根据配置信息获取对应的测试用例以及利用配置信息生成对应的测试代码。

服务器集群中包括多个节点,其中,节点包括一个主节点和多个从节点。主节点和从节点中均安装了对应用程序进行性能测试的测试工具。主节点可以对多个从节点进行控制。主节点可以与终端进行通信。具体的,测试人员通过终端访问主节点,主节点向终端返回应用程序性能测试所对应的业务场景管理页面。在该页面中,测试人员可以通过终端选择不同的业务场景以及对不同业务场景的测试需求进行配置。

业务场景包括:单业务场景、混合业务场景以及稳定性业务场景等。单业务场景需要一个或多个接口支持。在单业务场景对应的管理页面中,可以配置业务场景名称、每个接口的接口名称和接口对应的测试用例以及测试退出条件等。混合业务场景可以包括多个单业务场景。在混合业务场景的管理页面中,可以配置每个单业务场景的测试需求。在稳定性业务场景中可以根据混合业务场景进行测试需求的配置。

以单业务场景为例,在业务场景管理页面中,测试人员可以利用终端输入业务场景名称和对应的接口名称。测试人员还可以利用终端在该页面中根据接口名称选择相应的测试用例。例如,接口名称为查询资产接口,测试用例名称为查询活动列表。测试人员还可以通过终端在页面中配置接口测试退出条件,例如,响应时间为100毫秒,错误率为0.1%等。

终端将业务场景对应的配置信息发送至主节点。配置信息中包括业务场景名称、接口名称、与接口名称对应的测试用例名称以及与接口名称对应的测试退出条件等。

当主节点接收到单业务场景对应的配置信息时,根据配置信息中的测试用例名称选择对应的测试用例,根据配置信息中的接口名称获取单个接口对应的测试代码的拼装规则,以及根据配置信息中的业务场景名称获取单业务场景对应的测试代码的拼装规则。主节点利用单个接口对应的测试代码的拼装规则在测试代码库中获取相应的程序模块,按照该规则对程序模块进行拼装,生成单个接口对应的测试代码。主节点利用单业务场景对应的测试代码的拼装规则对多个接口对应的测试代码进行拼装,生成单业务场景对应的测试代码。进一步的,单业务场景也可以只有一个接口,则单个接口对应的测试代码即可视为单业务场景对应的测试代码。

当主节点接收到混合业务场景对应的配置信息时,按照上述方式拼装生成多个单业务场景对应的测试代码。主节点获取混合业务场景对应的代码拼装规则,利用该拼装规则将多个单业务场景对应的测试代码进行拼装,生成混合业务场景对应的测试代码。

当主节点接收到稳定性业务场景对应的配置信息时,可以按照混合业务场景的方式生成对应的测试代码。

步骤206,通过主节点将测试代码和测试用例分发至多个从节点;以使得从节点调用多个线程根据测试代码和测试用例对业务场景的多个接口执行性能测试。

步骤208,通过主节点接收多个从节点返回的测试数据,利用测试数据生成测试报告。

服务器集群中可以是分布式集群。当主节点获取到业务场景对应的配置信息时,可以生成相应的测试任务。测试任务中包括对业务场景中的多个接口进行性能测试。每个接口的性能测试需要多个线程来执行。测试任务中所对应的多个接口也可以称为待测接口。

主节点可以将测试任务分发至多个从节点进行相应的性能测试。具体的,从节点调用多个线程,主节点可以将测试任务以及测试用例、业务场景对应的测试代码等分发至多个从节点,每个从节点调用多个线程。以此使得每个从节点中的每个线程利用测试用例和业务场景对应的测试代码来执行测试任务,进行业务场景的性能测试。

当测试任务中的业务场景为单业务场景时,主节点可以将单业务场景对应的测试用例和测试代码分发至多个从节点。每个从节点相应的调用多个线程,每个线程利用测试用例和测试代码对单业务场景的多个接口执行性能测试。其中,线程对单业务场景中的多个接口执行测试时可以按照业务逻辑对多个接口进行串行操作。当测试中的接口达到配置的测试退出条件时,线程退出该接口的性能测试,按照业务逻辑执行下一个接口的性能测试。例如,单业务场景中包括3个接口,接口1、接口2和接口3,按照该业务场景中的业务逻辑,线程首先对接口1执行测试、其次对接口2执行测以及再次对接口3执行测试。通过串行操作的方式对单业务场景中的多个接口执行测试,以此能够确保测试数据的准确性。每个线程记录相应的测试数据,通过从节点将测试数据返回至主节点。主节点接收多个从节点返回的测试数据,对测试数据进行统计,利用统计结果生成应用程序在该业务场景下的性能测试报告。

进一步的,如果单业务场景只包括一个接口,则每个线程根据测试用例和测试代码对该接口进行性能测试,当达到配置的测试退出条件时,退出测试。多个线程记录相应的测试数据,通过从节点将测试数据返回至主节点。主节点接收多个从节点返回的测试数据,对测试数据进行统计,利用统计结果生成应用程序在该业务场景下的性能测试报告。

当测试任务中的业务场景为混合业务场景时,主节点将混合业务场景对应的测试用例和测试代码分发至多个从节点。每个从节点调用多个线程。主节点可以将混合业务场景拆分为多个单业务场景,将多个单业务场景分发至多个从节点的多个线程。其中,主节点可以将一个单业务场景分发至一个从节点,从节点的多个线程可以按照单业务场景的测试方式执行相应的性能测试,从而通过多个从节点的配合来完成混合业务场景的性能测试。主节点也可以将每个单业务场景分发至所有的从节点,每个从节点都可以对多个单业务场景执行性能测试。由此使得每个从节点都可以执行混合业务场景的性能测试。在执行混合业务场景的性能测试时,多个从节点可以对每个单业务场景进行并行测试,对每个单业务场景的多个接口按照业务逻辑进行串行测试。

当测试任务中的业务场景为稳定性业务场景时,稳定性业务场景对应的配置信息中除了线程数量少于混合业务场景性能测试所需的线程数量之外,其他配置信息可以与混合业务场景对应的配置信息相同。当测试任务中的业务场景为稳定性业务场景时,可以按照混合业务场景的性能测试方式执行稳定性业务场景的性能测试。

步骤208,通过主节点接收多个从节点返回的测试数据,利用测试数据生成测试报告。

当测试任务结束时,线程退出相应的性能测试,从节点记录该线程对应的测试数据。从节点可以将多个线程对应的测试数据发送至主节点。测试数据包括线程并发量、吞吐量、错误率以及服务器性能。其中,线程并发量是指在同一时间执行的线程的数量。吞吐量是指一秒内一个接口的响应次数。错误率是指一秒内期望的接口返回值的错误率。例如,线程并发量为100,期望的接口返回值为0,其中有3个接口返回值为1,则错误率为3%。服务器性能是指从节点的性能指标,包括cpu使用率和内存使用字节数等。

主节点接收多个从节点返回的测试数据,对测试数据进行统计,得到业务场景性能测试的统计结果。主节点利用该统计结果生成业务场景测试所对应的测试报告。

进一步的,当所有业务场景的性能测试完成之后,主节点可以统计得到所有的测试数据。主节点可以利用所有的测试数据生成应用程序服务端性能测试的测试报告。

本实施例中,当需要对应用程序的业务场景进行性能测试时,可以通过终端将业务场景对应的配置信息发送至服务器集群中的主节点。主节点根据配置信息获取相应的测试用例以及生成相应的测试代码。主节点将测试用例和测试代码并行分发至多个从节点。每个从节点调用多个线程利用测试代码和测试用例对业务场景的多个接口执行性能测试。由于采用了服务器集群的方式对应用程序进行服务端性能测试,从而能够使得业务场景中的多个接口的性能测试能够通过不同从节点的多个线程同时进行测试。当业务场景的性能测试结束后,从节点记录每个线程对应的测试数据,并将测试数据返回至主节点。主节点通过对多个从节点返回的测试数据进行统计,进而生成相应的测试报告。由于测试数据来自多个节点的多个线程,由此能够更加全面和准确的反映业务场景性能测试的实际状况,从而能够有效提高测试的准确性。

在一个实施例中,该方法还包括:当单个接口在性能测试中的错误率达到第一阈值时,从节点的线程退出单个接口对应的性能测试;利用从节点记录对应的测试数据;或者主节点根据单个接口对应线程步进数量和步进频率,记录对单个接口执行性能测试的线程数量;当单个接口对应的线程数量达到第二阈值时,多个从节点的线程退出单个接口的性能测试,利用从节点记录对应的测试数据。

本实施例中,终端可以配置业务场景中对每个接口退出性能测试的测试退出条件。退出条件可以包括一个或多个。当从节点的线程在对业务场景的接口执行性能测试时,如果达到测试退出条件,则线程退出对该接口的性能测试。

从节点的线程可以对业务场景的单个接口执行性能测试时,可以记录该接口的错误率,当错误率到达配置信息中的第一阈值时,表示达到测试退出条件,线程退出对该接口的性能测试。

从节点调用线程对业务场景的单个接口执行性能测试时,主节点还可以记录执行该单个接口性能测试的线程数量。具体的,配置信息中包括与单个接口对应的初始线程数量、步进数量和步进频率。主节点可以根据步进数量和步进频率将业务场景对应的测试任务分发至多个从节点的线程。当执行该单个接口测试的数量达到配置信息中的第二阈值时,即达到线程数量上限时,表示达到测试退出条件。主节点向从节点发送退出该单个接口测试的指令,从节点根据该指令使得多个线程退出对该单个接口的性能测试。

当配置信息中包括多个测试退出条件时,多个测试退出条件都可以有效。在单个接口的性能测试中,首先达到的测试条件为该接口性能测试的退出条件。也就是说,首先达到哪个测试退出条件,则执行哪个测试退出条件。通过配置测试退出条件,可以对单个接口测试进行有效控制,有利于提高业务场景性能测试的准确性。

在一个实施例中,该方法还包括:当业务场景为混合业务场景时,通过主节点将混合业务场景拆分为多个单业务场景;通过主节点获取多个单业务场景对应的测试用例和测试代码;通过主节点将多个单业务场景对应的测试用例和测试代码分发至多个从节点,以使得从节点对多个单业务场景执行性能测试。

本实施例中,一个混合业务场景可以包括多个单业务场景。主节点可以将混合业务场景拆分为多个单业务场景,将多个单业务场景分发至多个从节点的多个线程。

由于服务器集群中每个从节点的空余线程数量不同。为了确保主节点能够将混合业务场景拆分后的多个单业务场景顺利分配到多个从节点中进行性能测试,主节点可以读取每个从节点的空余线程数量,根据从节点的空余线程数量来分配多个单业务场景的性能测试。

在其中一个实施例中,通过主节点将多个单业务场景对应的测试用例和测试代码分发至多个从节点,以使得从节点对多个单业务场景执行性能测试的步骤包括:通过主节点获取每个从节点的空余线程数量;主节点根据空余线程数量将多个单业务场景的测试用例和测试代码分发至相应的从节点,以使得每个从节点对多个单业务场景执行性能测试。

空余线程数量可以被预先配置相应的加权系数。不同的空余线程数量可以被配置不同的加权系数。例如,空余线程数量为70~80,被配置的加权系数为1;空余线程数量为60~70,被配置的加权系数为0.9。主节点根据空余线程的加权系数将单业务场景对应的测试用例和测试代码分发至多个从节点。加权系数越高,表示从节点的空余线程数量越多。加权系数高的从节点,接收单业务场景对应的测试用例和测试代码的线程相对越多。通过加权系数对不同的从节点进行混合业务场景的性能测试进行分配,使得每个从节点之间的工作负载尽可能相当,有效实现了多个从节点之间的负载均衡。

在其中一个实施例中,主节点根据空余线程数量将多个单业务场景的测试用例和测试代码分发至相应的从节点的步骤,包括:获取每个从节点的空余线程数量对应的加权系数;若从节点数量大于拆分得到的多个单业务场景的数量,主节点根据单业务场景对应的接口数量和加权系数为单业务场景选择一个或多个从节点;将单业务场景对应的测试用例和测试代码分发至相应从节点。

主节点可以将混合业务场景拆分后的一个单业务场景分发至一个从节点,从节点调用多个线程按照单业务场景的测试方式执行相应的性能测试。若从节点的数量大于拆分得到的多个单业务场景的数量,主节点还可以根据单业务场景对应的接口数量和从节点对应的加权系数为不同的单业务场景选择一个或多个从节点,将选择后的单业务场景对应的测试用例和测试代码分发至相应从节点,从节点利用多个空余线程执行单业务场景对应的性能测试。多个从节点可以对每个单业务场景进行并行测试,对每个单业务场景的多个接口按照业务逻辑进行串行测试。从而通过多个从节点的配合来完成混合业务场景的性能测试。

在其中一个实施例中,主节点根据从节点对应的加权系数将多个单业务场景的测试用例和测试代码分发至所有从节点,每个从节点调用空余线程对多个单业务场景执行性能测试。由此使得每个从节点都可以执行混合业务场景的性能测试。在执行混合业务场景的性能测试时,多个从节点可以对每个单业务场景进行并行测试,对每个单业务场景的多个接口按照业务逻辑进行串行测试。

通过将混合业务场景拆分为多个单业务场景,对多个单业务场景进行并行测试,有效提高了测试效率。对每个单业务场景的多个接口按照业务逻辑进行串行测试,确保了性能测试的准确性。

进一步的,当业务场景为稳定性业务场景时,测试退出条件中配置的线程上限可以是混合业务场景中线程上限的预设比例,如50%。稳定性业务场景的性能测试可以按照混合业务场景的方式进行,当达到测试退出条件时,线程退出相应测试。

在一个实施例中,该方法还包括:新增从节点向主节点发送新增节点标识;主节点根据新增从节点标识向新增从节点发送初始化命令;新增从节点执行初始化命令,初始化完成后,新增从节点接收主节点分发的测试用例和测试代码,执行与业务场景对应的性能测试。

本实施例中,服务器集群中的主节点和从节点可以通过消息队列进行通信。当服务器集群中的从节点无法满足当前性能测试的需求时,可以对服务器集群进行扩容。具体的,测试人员可以对新增从节点安装测试工具。新增从节点通过消息队列向主节点发送新增节点标识。主节点接收到新增节点标识,将新增节点标识进行记录,通过消息队列向新增节点发送初始化命令。新增节点接收初始化命令,根据该命令进行初始化操作。新增节点完成初始化操作之后,即可作为从节点利用测试工具调用线程接收主节点分发的测试任务,以此执行与应用场景对应的性能测试。

在一个实施例中,如图3所示,提供了一种应用程序的性能测试装置,包括:主节点302和从节点304,其中:

主节点302,用于接收终端发送的业务场景的性能测试请求,性能测试请求中携带了业务场景对应的配置信息;根据配置信息获取对应的测试用例以及利用配置信息生成对应的测试代码;将测试代码和测试用例分发至多个从节点304。

从节点304,用于运行多个线程,通过线程利用测试代码和测试用例对业务场景的多个接口执行性能测试。

主节点302还用于接收多个从节点304返回的测试数据,利用测试数据生成测试报告。

在其中一个实施例中,当单个接口在性能测试中的错误率达到第一阈值时,从节点304的线程退出接口对应的性能测试,从节点304还用于记录对应的测试数据。

在其中一个实施例中,主节点302根据单个接口对应线程步进数量和步进频率,记录对单个接口执行性能测试的线程数量;当单个接口对应的线程数量达到第二阈值时,多个从节点304的线程退出单个接口的性能测试,从节点304记录对应的测试数据。

在一个实施例中,业务场景包括混合业务场景和单业务场景;当业务场景为混合业务场景时,主节点302还用于将混合业务场景拆分为多个单业务场景;获取多个单业务场景对应的测试用例和测试代码;将多个单业务场景对应的测试用例和测试代码分发至多个从节点304;从节点304还用于调用多个线程对多个单业务场景执行性能测试。。

在一个实施例中,主节点302还用于获取每个从节点304的空余线程数量;根据空余线程数量将多个单业务场景的测试用例和测试代码分发至相应的从节点304;从节点304还用于调用多个空余线程执行单业务场景的性能测试。

在一个实施例中,主节点302还用于获取每个从节点的空余线程数量对应的加权系数;若从节点数量大于拆分得到的多个单业务场景的数量,根据单业务场景对应的接口数量和加权系数为单业务场景选择一个或多个从节点;将单业务场景对应的测试用例和测试代码分发至相应从节点304。

在一个实施例中,主节点302还用于根据从节点304对应的加权系数将多个单业务场景的测试用例和测试代码分发至所有从节点304。

在一个实施例中,主节点302还用于接收新增从节点304发送的新增从节点标识,向新增从节点304发送初始化命令;新增从节点304执行初始化命令,初始化完成后,新增从节点304接收主节点302分发的测试用例和测试代码,执行与业务场景对应的性能测试。

在一个实施例中,提供了一种服务器集群,包括主节点和多个从节点。主节点和从节点可以是独立服务器。如图4所示,主节点包括通过系统总线连接的处理器、存储器和网络接口。其中,该主节点的处理器用于提供计算和控制能力。该主节点的存储器包括非易失性存储介质、内存储器。该服务器的非易失性存储介质存储有操作系统和和计算机程序。该主节点的内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该主节点的网络接口用于与外部的终端以及多个从节点之间通过网络连接通信,比如,接收终端发送的业务场景的配置信息,以及向多个从节点分发业务场景性能测试所需的测试用例和测试代码。通过终端以及从节点的配合,该主节点的计算机程序被处理器执行时可以实现一种应用程序的性能测试方法。本领域技术人员可以理解,图4中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的服务器的限定,具体的服务器可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。

一种计算机设备,包括存储器及处理器,存储器中储存有计算机程序,指令被处理器执行时,使得处理器执行以下步骤:

通过主节点接收终端发送的业务场景的性能测试请求,性能测试请求中携带了业务场景对应的配置信息;

主节点根据配置信息获取对应的测试用例以及利用配置信息生成对应的测试代码;

通过主节点将测试代码和测试用例分发至多个从节点中运行的线程;以使得每个从节点的线程利用测试代码和测试用例对业务场景的多个接口执行性能测试;

通过主节点接收多个从节点返回的测试数据,利用测试数据生成测试报告。

在一个实施例中,处理器执行计算机程序时还执行以下步骤:

当单个接口在性能测试中的错误率达到第一阈值时,从节点的线程退出接口对应的性能测试;利用从节点记录对应的测试数据;或者

主节点根据单个接口对应线程步进数量和步进频率,记录对单个接口执行性能测试的线程数量;当接口对应的线程数量达到第二阈值时,多个从节点的线程退出接口的性能测试,利用从节点记录对应的性测试数据。

在一个实施例中,处理器执行计算机程序时还执行以下步骤:

当业务场景为混合业务场景时,通过主节点将混合业务场景拆分为多个单业务场景;

通过主节点获取多个单业务场景对应的测试用例和测试代码;

通过主节点将多个单业务场景对应的测试用例和测试代码分发至多个从节点的线程执行性能测试。

在一个实施例中,处理器执行计算机程序时还执行以下步骤:

通过主节点获取每个从节点的空余线程数量;

主节点根据空余线程数量将多个单业务场景的测试用例和测试代码分发至相应的从节点,以使得每个单业务场景对应的性能测试被多个从节点执行。

在一个实施例中,处理器执行计算机程序时还执行以下步骤:

获取每个从节点的空余线程数量对应的加权系数;

若从节点数量大于拆分得到的多个单业务场景的数量,主节点根据单业务场景对应的接口数量和加权系数为单业务场景选择一个或多个从节点;

将单业务场景对应的测试用例和测试代码分发至相应从节点。

在一个实施例中,处理器执行计算机程序时还执行以下步骤:

新增从节点向主节点发送新增节点标识;

主节点根据新增从节点标识向新增从节点发送初始化命令;

新增从节点执行初始化命令,初始化完成后,新增从节点接收主节点分发的测试用例和测试代码,执行与业务场景对应的性能测试。

在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:

通过主节点接收终端发送的业务场景的性能测试请求,性能测试请求中携带了业务场景对应的配置信息;

主节点根据配置信息获取对应的测试用例以及利用配置信息生成对应的测试代码;

通过主节点将测试代码和测试用例分发至多个从节点中运行的线程;以使得每个从节点的线程利用测试代码和测试用例对业务场景的多个接口执行性能测试;

通过主节点接收多个从节点返回的测试数据,利用测试数据生成测试报告。

在一个实施例中,计算机程序被处理器执行时还执行以下步骤:

当单个接口在性能测试中的错误率达到第一阈值时,从节点的线程退出接口对应的性能测试;利用从节点记录对应的测试数据;或者

主节点根据单个接口对应线程步进数量和步进频率,记录对单个接口执行性能测试的线程数量;当接口对应的线程数量达到第二阈值时,多个从节点的线程退出接口的性能测试,利用从节点记录对应的性测试数据。

在一个实施例中,业务场景包括混合业务场景和单业务场景;计算机程序被处理器执行时还执行以下步骤:

当业务场景为混合业务场景时,通过主节点将混合业务场景拆分为多个单业务场景;

通过主节点获取多个单业务场景对应的测试用例和测试代码;

通过主节点将多个单业务场景对应的测试用例和测试代码分发至多个从节点的线程执行性能测试。

在一个实施例中,计算机程序被处理器执行时还执行以下步骤:

通过主节点获取每个从节点的空余线程数量;

主节点根据空余线程数量将多个单业务场景的测试用例和测试代码分发至相应的从节点,以使得每个单业务场景对应的性能测试被多个从节点执行。

在一个实施例中,计算机程序被处理器执行时还执行以下步骤:

获取每个从节点的空余线程数量对应的加权系数;

若从节点数量大于拆分得到的多个单业务场景的数量,主节点根据单业务场景对应的接口数量和加权系数为单业务场景选择一个或多个从节点;

将单业务场景对应的测试用例和测试代码分发至相应从节点。

在一个实施例中,计算机程序被处理器执行时还执行以下步骤:

新增从节点向主节点发送新增节点标识;

主节点根据新增从节点标识向新增从节点发送初始化命令;

新增从节点执行初始化命令,初始化完成后,新增从节点接收主节点分发的测试用例和测试代码,执行与业务场景对应的性能测试。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(read-onlymemory,rom)等。

以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。

以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1