自动化性能测试方法及测试平台的制作方法

文档序号:6524163阅读:251来源:国知局
自动化性能测试方法及测试平台的制作方法
【专利摘要】本发明提供了一种自动化性能测试方法及测试平台。该方法包括:监测是否接收到待测脚本,如果监测到待测脚本,接收与待测脚本对应的目标测试参数,根据目标测试参数与预设的测试参数与测试资源之间的对应关系,为待测脚本部署测试时所需的目标测试资源,利用目标测试资源构建待测脚本的测试环境,在测试环境下对所述待测脚本进行测试,获取待测脚本的性能指标。本发明预先在测试平台中存储测试参数与测试资源之间的对应关系,在获取到该待测脚本对应的目标测试参数,根据该对应关系获取相应的目标测试资源,利用目标测试资源搭建测试环境,克服了现有通过人工搭建测试环境而存在性能测试效率低的问题,提高了性能测试的时效性。
【专利说明】自动化性能测试方法及测试平台
【技术领域】
[0001]本发明涉及计算机测试技术,尤其涉及一种自动化性能测试方法及测试平台。
【背景技术】
[0002]传统的性能测试方法在测试之前,需要测试人员为该待测脚本准备测试工具和测试数据,然后测试人员在根据自身对待测脚本的测试需求,以及待测脚本的复杂程度,人为地为该待测脚本搭建进行性能测试的测试环境。测试人员人工搭建完测试环境后,在该测试环境下对该待测脚本进行测试,得到待测脚本的性能指标。
[0003]但是,现今开发者会不断地对软件的版本进行更新或者发布,这就需要测试人员不断地对最新版本的脚本进行测试,以向开发者反馈该最新版本中性能测试是否符合要求,以修正最新版本,提高软件的满意度。采用上述传统的性能测试方法,每次对待测脚本进行测试时,都需要人工地搭建测试环境,而人工搭建测试环境的过程需要很长的时间使得待测脚本的性能测试的时效性较差。

【发明内容】

[0004]本发明提供一种自动化性能测试方法及测试平台,以解决现有性能测试方法存在的性能测试效率较低的问题。
[0005]为了实现上述目的,本发明提供了一种自动化性能测试方法,包括:
[0006]监测是否接收到待测脚本;
[0007]如果监测到所述待测脚本,接收与所述待测脚本对应的目标测试参数;
[0008]根据所述目标测试参数和预设的测试参数与测试资源之间的对应关系,为所述待测脚本部署测试时所需的目标测试资源;
[0009]利用所述目标测试资源构建所述待测脚本的测试环境;
[0010]在所述测试环境下对所述待测脚本进行测试,获取所述待测脚本的性能指标。
[0011]为了实现上述目的,本发明提供了一种测试平台,包括:
[0012]监测模块,用于监测是否接收到待测脚本;
[0013]接收模块,用于在所述监测模块监测到所述待测脚本后,接收与所述待测脚本对应的目标测试参数
[0014]测试资源部署模块,用于根据所述目标测试参数和预设的测试参数与测试资源之间的对应关系,为所述所述待测脚本部署测试时所需的目标测试资源;
[0015]测试环境构建模块,用于利用所述目标测试资源构建所述待测脚本的测试环境;
[0016]测试模块,用于在所述测试环境下对所述待测脚本,获取所述待测脚本的性能指标。
[0017]本发明提供的一种自动化性能测试方法及测试平台,监测是否接收到待测脚本,如果监测到待测脚本,接收与待测脚本对应的目标测试参数,根据该目标测试参数与预设的测试参数与测试资源之间的对应关系,为待测脚本部署测试时所需的目标测试资源,利用目标测试资源构建待测脚本的测试环境,在测试环境下对所述待测脚本进行测试,获取待测脚本的性能指标。本实施例中,预先在测试平台中存储预设的测试参数与测试资源之间的对应关系,在监测到提交的待测脚本后,可以直接根据该待测脚本的目标测试参数,获取到相应的目标测试资源,从而自动地利用目标测试资源,搭建测试环境,从而克服了现有技术中使用人工搭建测试环境而存在的性能测试效率低的问题,提高了性能测试的时效性。
【专利附图】

【附图说明】
[0018]图1为本发明实施例提供的一种自动化性能测试方法的流程示意图;
[0019]图2为本发明实施例提供的另一种自动化性能测试方法的流程示意图;
[0020]图3为本发明实施例提供的一种测试平台的结构示意图;
[0021]图4为本发明实施例提供的另一种测试平台的结构示意图。
【具体实施方式】
[0022]下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。
[0023]图1为本发明实施例提供的一种自动化性能测试方法的流程示意图。本实施例中,该方法的执行主体可以为测试平台。如图1所示,该方法包括以下步骤:
[0024]101、监测是否接收到待测脚本。
[0025]测试平台可以实时地监测是否接收到待测脚本。例如,待测脚本可以为测试人员提交的新脚本或者更新的脚本,也可以开放人员提交的软件新版本的脚本。
[0026]102、如果监测到所述待测脚本,接收与所述待测脚本对应的目标测试参数。
[0027]每当有待测脚本提交到测试平台,测试平台就可以监测到该待测脚本,从而触发对待测脚本的测试流程。测试平台可以向测试人员展示输入界面,测试人员根据对待测脚本的测试需求和该待测脚本的复杂度,为该待测脚本确定目标测试参数,然后在输入界面内输入该待测脚本的目标测试参数。
[0028]103、根据所述目标测试参数和预设的测试参数与测试资源之间的对应关系,为所述待测脚本部署测试时所需的目标测试资源。
[0029]本实施例中,测试平台中预先存储有测试参数与测试资源之间对应关系。在接收测试人员输入的目标测试参数,测试平台根据该目标测试参数和上述对应关系,查询与目标测试参数对应的目标测试资源。测试平台为待测脚本,部署测试所需的目标测试资源。本实施例中,目标测试资源包括用于对该待测脚本进行测试时,所需的网络资源和物理资源。物理资源可包括中央处理器(Central Processing Unit,简称CPU)、内存和存储空间。网络资源可以包括测试时所需的带宽等。
[0030]104、利用所述目标测试资源构建所述待测脚本的测试环境。
[0031]测试平台获取到目标测试资源后,利用该目标测试资源构建用于对待测脚本进行测试的测试环境。具体地,测试平台根据目标测试资源中包括的测试时所需的CPU、内存和存储空间等物理资源,获取到满足上述物理资源的测试设备,然后进一步地根据目标测试资源中包括的测试时所需的网络资源即带宽,再从满足上述物理资源的测试设备中,选取一个满足网络资源需求的测试设备作为该待测脚本的测试设备,这样就为该待测脚本构建测试所需的测试环境。
[0032]105、在所述测试环境下对所述待测脚本进行测试,获取所述待测脚本的性能指标。
[0033]具体地,在构建完测试环境后,测试平台将待测脚本导入测试环境中,测试平台可以获取到待测脚本对应的测试设备的互联网协议(Internet Protocol,简称IP)地址,然后将待测脚本发送到该IP地址对应的测试设备即该待测脚本的测试环境上,然后在该测试环境下运行待测脚本,对待测脚本进行测试,获取到该待测脚本的性能指标。一般性能指标可以包括CPU使用率、内存使用率以及存储空间使用率等。
[0034]本实施例提供的自动化性能测试方法,监测是否接收到待测脚本,如果监测到待测脚本,接收与待测脚本对应的目标测试参数,根据该目标测试参数与预设的测试参数与测试资源之间的对应关系,为待测脚本部署测试时所需的目标测试资源,利用目标测试资源构建待测脚本的测试环境,在测试环境下对所述待测脚本进行测试,获取待测脚本的性能指标。本实施例中,预先在测试平台中存储预设的测试参数与测试资源之间的对应关系,在监测到提交的待测脚本后,可以直接根据该待测脚本的目标测试参数,获取到相应的目标测试资源,从而自动地利用目标测试资源,搭建测试环境,从而克服了现有技术中采用人工搭建测试环境而存在性能测试效率低的问题,提高了性能测试的时效性。
[0035]图2为本发明实施例提供的另一种自动化性能测试方法的流程示意图。如图2所示,该方法包括以下步骤:
[0036]201、监测是否接收到待测脚本。
[0037]测试平台可以实时地监测是否接收到待测脚本。例如,待测脚本可以为测试人员提交的新脚本或者更新的脚本,也可以开放人员提交的软件新版本的脚本。
[0038]202、如果监测到待测脚本,接收与待测脚本对应的目标测试参数,其中,目标测试参数为测试待测脚本时所需的测试资源的资源等级信息。
[0039]测试平台可以向测试人员展示输入界面,测试人员根据对待测脚本的测试需求和该待测脚本的复杂度,为该待测脚本确定目标测试参数,然后在输入界面内输入该待测脚本的目标测试参数。
[0040]实际应用中,由于待测脚本的复杂度不同,而且测试人员对待测脚本的测试需求也不同,相应的不同待测脚本在测试时所需要使用的测试资源的等级也不同。
[0041]本实施例中,测试人员可以根据待测脚本的复杂度以及不同复杂度下的测试需求,为所有待测脚本在测试时所需的测试资源进行等级划分,并且将待测脚本进行测试时所需资源的等级作为目标测试参数。也就是说,目标测试参数为测试待测脚本时所需的测试资源的资源等级信息。
[0042]203、查询预设的资源等级与测试资源列表之间的对应关系,获取与资源等级信息对应的目标测试资源列表。
[0043]相应地,当目标测试参数为测试待测脚本时所需的测试资源的资源等级信息时,本实施例中,测试平台中预先存储有资源等级与测试资源列表之间对应关系。在获取到资源等级信息后,测试平台查询预设的的资源等级与测试资源列表之间的对应关系,获取与资源等级信息对应的目标测试资源列表。
[0044]204、为待测脚本部署与目标测试资源列表对应的目标测试资源。[0045]在获取到目标资源列表后,测试平台根据该目标测试资源列表,为待测脚本部署目标测试资源。目标测试资源列表不仅包括测试所需的CPU、内存和存储空间等物理资源,还包括测试所需的网络资源如带宽。也就是说,测试平台根据该目标测试资源列表,获取相应的测试所需的CPU、内存和存储空间等物理资源,还需要获取测试所需带宽。
[0046]205、利用目标测试资源构建待测脚本的测试环境。
[0047]206、在测试环境下对待测脚本进行测试,获取待测脚本的性能指标。
[0048]步骤205?步骤206可参见上述实施例中步骤104?步骤105相关内容的记载,此处不再赘述。
[0049]207、将测试得到的性能指标与预设的性能指标进行比较。
[0050]在获取到测试得到的性能指标后,测试平台将该测试得到的性能指标与预设的性能指标进行比较,判断该待测脚本是否合格。
[0051]208、如果测试得到的性能指标未超出预设的性能指标,判定待测脚本合格。
[0052]如果比较出测试得到的性能指标未超出预设的性能指标时,测试平台可以判断待测脚本合格,待测脚本的性能满足需求。例如,性能指标为CPU使用率,本实施例中,预设的CPU使用率为50%,而测试得到的性能指标为40%,即测试得到的CPU使用率未超出预设的CPU使用率,说明该待测脚本合格,即该待测脚本的性能满足需求。
[0053]209、将测试得到的性能指标和待测脚本发送给远端服务器。
[0054]在判断出待测脚本合格后,测试平台可以将待测脚本和测试得到的性能指标,发送到远端服务器中。
[0055]210、将远端服务器的地址信息发送给提交测试脚本的设备。
[0056]进一步地,测试平台将远端服务器的地址信息,如IP地址,发送给提交该待测脚本的设备,该设备可以将上述测试性能指标通过邮件或者短信的方式发送给测试人员。本实施例中,测试平台将待测脚本发送到远端服务器后,其他设备就可以登录远端服务器,从远端服务器将待测脚本下载到本地。
[0057]可选地,测试平台还可以将对待测脚本进行性能测试过程中,产生的其他测试结果发送给远端服务器,这样测试人员就可以根据远端服务器的IP地址从远端服务器中下载上述测试结果到当前所在设备上,还可以测试结果进行分析以修正待测脚本,用于进一步提闻待测脚本的性能。
[0058]211、释放测试待测脚本时占用的目标测试资源。
[0059]在完成性能测试后,测试平台将测试待测脚本时占用的目标测试资源进行释放,以将目标测试资源处于空闲状态,从而可以对其他待测脚本进行测试,避免节省资源。
[0060]本实施例中,预先在测试平台中存储预设的测试参数与测试资源之间的对应关系,在监测到提交的待测脚本后,可以直接根据该待测脚本的目标测试参数,获取到相应的目标测试资源,从而自动地利用目标测试资源,搭建测试环境,从而克服了现有技术中采用人工搭建测试环境而存在性能测试效率低的问题,提高了性能测试的时效性,而且在测试完成后,可以释放测试时所占用的资源,避免资源的浪费。
[0061]图3为本发明实施例提供的一种测试平台的结构示意图。如图3所示,该测试平台包括:监测模块31、接收模块32、测试资源部署模块33、测试环境构建模块34和测试模块35。[0062]其中,监测模块31可以实时地监测是否接收到待测脚本。例如,待测脚本可以为测试人员提交的新脚本或者更新的脚本,也可以开放人员提交的软件新版本的脚本。
[0063]每当有待测脚本提交到测试平台,监测模块31就可以监测到该待测脚本,触发接收模块32。接收模块32向测试人员展示输入界面,测试人员根据对待测脚本的测试需求和该待测脚本的复杂度,为该待测脚本确定目标测试参数,在输入界面输入待测脚本的目标测试参数,这样接收模块32接收到该目标测试参数。
[0064]本实施例中,测试平台中预先存储有测试参数与测试资源之间对应关系。测试资源部署模块33与接收模块32连接,在接收模块32接收到目标测试参数后,测试资源部署模块33根据该目标测试参数和上述对应关系,查询与目标测试参数对应的目标测试资源。测试平台为待测脚本,部署测试所需的目标测试资源。
[0065]本实施例中,目标测试资源包括用于对该待测脚本进行测试时,所需的网络资源和物理资源。物理资源可包括CPU、内存和存储空间。网络资源包括测试所需的带宽等。
[0066]测试环境构建模块34与测试资源部署模块33连接,在测试资源部署模块33获取到目标测试资源后,测试环境构建模块34利用该目标测试资源构建用于对待测脚本进行测试的测试环境。具体地,测试环境构建模块34目标测试资源中包括的测试时所需的CPU、内存和存储空间等物理资源,获取到满足上述物理资源的测试设备,然后进一步地根据目标测试资源中包括的测试时所需的网络资源即带宽,再从满足上述物理资源的测试设备中,选取一个满足网络资源需求的测试设备作为该待测脚本的测试设备,这样就为该待测脚本构建测试所需的测试环境。
[0067]测试环境构建模块34与测试模块35连接,在构建完测试环境后,可以获取到待测脚本对应的测试设备的IP地址,然后将待测脚本发送到该IP地址对应的测试设备即该待测脚本的测试环境上。当测试模块35将待测脚本导入测试环境中,在该测试环境下运行待测脚本,对待测脚本进行测试,获取到该待测脚本的性能指标。一般性能指标可以包括CPU使用率、内存使用率以及存储空间使用率等。
[0068]本实施例提供的测试平台,监测是否接收到待测脚本,如果监测到待测脚本,接收与待测脚本对应的目标测试参数,根据该目标测试参数与预设的测试参数与测试资源之间的对应关系,为待测脚本部署测试时所需的目标测试资源,利用目标测试资源构建待测脚本的测试环境,在测试环境下对所述待测脚本进行测试,获取待测脚本的性能指标。本实施例中,预先在测试平台中存储预设的测试参数与测试资源之间的对应关系,在监测到提交的待测脚本后,可以直接根据该待测脚本的目标测试参数,获取到相应的目标测试资源,从而自动地利用目标测试资源,搭建测试环境,从而克服了现有技术中采用人工搭建测试环境而存在性能测试效率低的问题,提高了性能测试的时效性。
[0069]图4为本发明实施例提供的另一种测试平台的结构示意图。如图4所示,该测试平台包括:监测模块41、接收模块42、测试资源部署模块43、测试环境构建模块44、测试模块45、判断模块46、发送模块47和释放模块48。
[0070]监测模块41可以实时地监测是否接收到待测脚本。每当有待测脚本提交到测试平台,监测模块41就可以监测到该待测脚本,从而触发接收模块42。接收模块42向测试人员展示输入界面,测试人员根据对待测脚本的测试需求和该待测脚本的复杂度,为该待测脚本确定目标测试参数,然后在输入界面内输入该待测脚本的目标测试参数,这样接收模块42接收到该目标测试参数。
[0071]实际应用中,由于待测脚本的复杂度不同,而且测试人员对待测脚本的测试需求也不同,相应的不同待测脚本在测试时所需要使用的测试资源的等级也不同。
[0072]本实施例中,测试人员可以根据待测脚本的复杂度以及不同复杂度下的测试需求,为所有待测脚本在测试时所需的测试资源进行等级划分,并且将待测脚本进行测试时所需资源的等级作为目标测试参数。也就是说,目标测试参数为测试待测脚本时所需的测试资源的资源等级信息。
[0073]相应地,当目标测试参数为测试待测脚本时所需的测试资源的资源等级信息时,本实施例中的测试平台预先存储有资源等级与测试资源列表之间对应关系。
[0074]本实施例中测试资源部署模块43的一种可选地实现结构包括:获取单元431和部署单元432。
[0075]获取单元431与接收模块42连接,在接收模块42接收到资源等级信息后,获取单元431查询预设的的资源等级与测试资源列表之间的对应关系,获取与资源等级信息对应的目标测试资源列表。获取单元431与部署单元432连接,在获取单元431获取到目标资源列表后,部署单元432根据该目标测试资源列表,为待测脚本部署目标测试资源。目标测试资源列表不仅包括测试所需的CPU、内存和存储空间等物理资源,还包括测试所需的带宽等网络资源。也就是说,部署单元432根据该目标测试资源列表,获取相应的测试所需的CPU、内存和存储空间等物理资源,还要获取测试所需的带宽等网络资源。
[0076]测试环境构建模块44与部署单元432连接,在部署单元432获取到目标测试资源后,测试环境构建模块44利用该目标测试资源构建用于对待测脚本进行测试的测试环境。测试环境构建模块44与测试模块45连接,在构建完测试环境后,测试模块45将待测脚本导入测试环境中,在该测试环境下运行待测脚本,对待测脚本进行测试,获取到该待测脚本的性能指标。测试环境构建过程可参见上述实施例中相关内容的记载,此处不再赘述。
[0077]测试模块45与判断模块46连接,在测试模块45获取到测试得到的性能指标后,判断模块46将该测试得到的性能指标与预设的性能指标进行比较,判断该待测脚本是否合格,如果测试得到的性能指标未超出预设的性能指标,判定待测脚本合格,说明待测脚本的性能满足需求。例如,性能指标为CPU使用率,本实施例中,预设的CPU使用率为50%,而测试得到的性能指标为40%,即测试得到的CPU使用率未超出预设的CPU使用率,说明该待测脚本合格。
[0078]判断模块46与发送模块47连接,在判断模块46判断出待测脚本合格后,发送模块47可以将待测脚本和测试得到的性能指标发送到远端服务器中。进一步地,发送模块47将远端服务器的地址信息,如IP地址,发送给提交该待测脚本的设备。该设备可以将上述测试性能指标通过邮件或者短信的方式发送给测试人员。本实施例中,发送模块47将待测脚本发送到远端服务器后,其他设备就可以登录远端服务器,从远端服务器将待测脚本下载到本地。
[0079]可选地,发送模块47还可以将对待测脚本进行性能测试过程中,产生的其他测试结果发送给远端服务器,这样测试人员就可以根据远端服务器的IP地址从远端服务器中下载上述测试结果到当前所在设备上,还可以测试结果进行分析以修正待测脚本,用于进一步提闻待测脚本的性能。[0080]发送模块47与释放模块48连接,在完成性能测试后,释放模块48将测试待测脚本时占用的目标测试资源进行释放,以将目标测试资源处于空闲状态,从而可以对其他待测脚本进行测试,避免节省资源。
[0081]本实施例中,预先在测试平台中存储预设的测试参数与测试资源之间的对应关系,在监测到提交的待测脚本后,可以直接根据该待测脚本的目标测试参数,获取到相应的目标测试资源,从而自动地利用目标测试资源,搭建测试环境,从而克服了现有技术中采用人工搭建测试环境而存在性能测试效率低的问题,提高了性能测试的时效性,而且在测试完成后,可以释放测试时所占用的资源,避免资源的浪费。
[0082]最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
【权利要求】
1.一种自动化性能测试方法,其特征在于,包括: 监测是否接收到待测脚本; 如果监测到所述待测脚本,接收与所述待测脚本对应的目标测试参数; 根据所述目标测试参数和预设的测试参数与测试资源之间的对应关系,为所述待测脚本部署测试时所需的目标测试资源; 利用所述目标测试资源构建所述待测脚本的测试环境; 在所述测试环境 下对所述待测脚本进行测试,获取所述待测脚本的性能指标。
2.根据权利要求1所述的自动化性能测试方法,其特征在于,所述目标测试参数为测试所述待测脚本时所需的测试资源的资源等级信息; 所述根据所述目标测试参数和预设的测试参数与测试资源之间的对应关系,为所述待测脚本部署测试时所需的目标测试资源包括: 查询预设的资源等级与测试资源列表之间的对应关系,获取与所述资源等级信息对应的目标测试资源列表; 为所述待测脚本部署与所述目标测试资源列表对应的所述目标测试资源。
3.根据权利要求2所述的自动化性能测试方法,其特征在于,所述在所述测试环境下对所述待测脚本进行测试,获取所述待测脚本的性能指标之后,还包括: 将测试得到的所述性能指标与预设的性能指标进行比较,判断所述待测脚本是否合格; 如果测试得到的所述性能指标未超出所述预设的性能指标,判定所述待测脚本合格。
4.根据权利要求3所述的自动化性能测试方法,其特征在于,所述判定所述待测脚本合格之后,还包括: 将测试得到的所述性能指标和所述待测脚本发送给远端服务器; 将所述远端服务器的地址信息发送给提交所述测试脚本的设备。
5.根据权利要求4所述的自动化性能测试方法,其特征在于,所述将所述远端服务器的地址信息发送给提交所述测试脚本的设备之后,还包括: 释放测试所述待测脚本时占用的所述目标测试资源。
6.一种测试平台,其特征在于,包括: 监测模块,用于监测是否接收到待测脚本; 接收模块,用于在所述监测模块监测到所述待测脚本后,接收与所述待测脚本对应的目标测试参数 测试资源部署模块,用于根据所述目标测试参数和预设的测试参数与测试资源之间的对应关系,为所述所述待测脚本部署测试时所需的目标测试资源; 测试环境构建模块,用于利用所述目标测试资源构建所述待测脚本的测试环境; 测试模块,用于在所述测试环境下对所述待测脚本,获取所述待测脚本的性能指标。
7.根据权利要求6所述的测试平台,其特征在于,所述测试参数为测试所述待测脚本时所需的测试资源的资源等级信息; 所述测试资源部署模块包括: 获取单元,用于查询预设的资源等级与测试资源列表之间的对应关系,获取与所述资源等级信息对应的目标测试资源列表;部署单元,用于为所述待测脚本分配与所述目标测试资源列表对应的所述目标测试资源。
8.根据权利要求7所述的测试平台,其特征在于,还包括:判断模块,用于将测试得到的所述性能指标与预设的性能指标进行比较,判断所述待测脚本是否合格,如果测试得到的所述性能指标未超出所述预设的性能指标,判定所述待测脚本合格。
9.根据权利要求8所述的测试平台,其特征在于,还包括:发送模块,用于所述判断模块判定所述待测脚本合格后,将测试得到的所述性能指标和所述待测脚本发送给远端服务器,以及将所述远端服务器的地址信息发送给提交所述测试脚本的设备。
10.根据权利要求9所述的测试平台,其特征在于,还包括:释放模块,用于释放测试所述`待测脚本时占用的所述目标测试资源。
【文档编号】G06F11/36GK103678130SQ201310693640
【公开日】2014年3月26日 申请日期:2013年12月17日 优先权日:2013年12月17日
【发明者】王文治 申请人:中国联合网络通信集团有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1