CN112100011A - 一种性能测试方法及装置 - Google Patents

一种性能测试方法及装置 Download PDF

Info

Publication number
CN112100011A
CN112100011A CN202010893614.2A CN202010893614A CN112100011A CN 112100011 A CN112100011 A CN 112100011A CN 202010893614 A CN202010893614 A CN 202010893614A CN 112100011 A CN112100011 A CN 112100011A
Authority
CN
China
Prior art keywords
task
test
performance
performance testing
testing
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.)
Pending
Application number
CN202010893614.2A
Other languages
English (en)
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.)
Yinqing Technology Co ltd
Original Assignee
Yinqing 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 Yinqing Technology Co ltd filed Critical Yinqing Technology Co ltd
Priority to CN202010893614.2A priority Critical patent/CN112100011A/zh
Publication of CN112100011A publication Critical patent/CN112100011A/zh
Pending legal-status Critical Current

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/3409Recording 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 for performance assessment
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/2273Test methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/26Functional testing

Abstract

本发明提供一种性能测试方法及装置,所述方法包括:执行前置任务以使得被测对象的测试环境满足测试要求;发送性能测试任务给至少一个性能测试代理机,以使得所述至少一个性能测试代理机执行所述性能测试任务以完成对所述被测对象的性能测试。所述装置用于执行上述方法。本发明实施例提供的性能测试方法及装置,提高了性能测试的效率。

Description

一种性能测试方法及装置
技术领域
本发明涉及计算机技术领域,具体涉及一种性能测试方法及装置。
背景技术
在计算机系统性能测试过程中,往往需要测试多个性能测试场景,获取多组性能数据,以全面观察计算机系统的性能表现并分析是否存在系统性能问题。
现有技术中,测试人员在进行多个性能测试场景的测试时,需要分别设置多个性能测试场景,可以包括并发用户数、迭代任务内容、每个用户执行迭代任务之间的步长、迭代次数或总执行时间等参数,并通过调度器设置各个性能测试场景的执行顺序或设定各个性能测试场景的开始执行时间。在这种测试方法下,多个性能测试场景所测试的对象是不可变的,每个性能测试场景之间仅仅是性能测试客户端的参数设置不同,而被测环境始终没有变化。而实际测试过程中,多个性能测试场景的被测环境可能会不同,这就导致能够连续自动化测试的性能测试场景非常有限,测试过程会因为中途手动修改测试环境而中断,降低了测试效率。
发明内容
针对现有技术中的问题,本发明实施例提供一种性能测试方法及装置,能够至少部分地解决现有技术中存在的问题。
一方面,本发明提出一种性能测试方法,包括:
执行前置任务以使得被测对象的测试环境满足测试要求;
发送性能测试任务给至少一个性能测试代理机,以使得所述至少一个性能测试代理机执行所述性能测试任务以完成对所述被测对象的性能测试。
另一方面,本发明提供一种性能测试装置,包括:
第一执行单元,用于执行前置任务以使得被测对象的测试环境满足测试要求;
测试单元,用于发送性能测试任务给至少一个性能测试代理机,以使得所述至少一个性能测试代理机执行所述性能测试任务以完成对所述被测对象的性能测试。
再一方面,本发明提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述任一实施例所述性能测试方法的步骤。
又一方面,本发明提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述任一实施例所述性能测试方法的步骤。
本发明实施例提供的性能测试方法及装置,执行前置任务以使得被测对象的测试环境满足测试要求,然后发送性能测试任务给至少一个性能测试代理机,以使得至少一个性能测试代理机执行性能测试任务以完成对被测对象的性能测试,能够自动更改被测对象的测试环境,实现无人值守的自动化测试,提高了性能测试的效率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:
图1是本发明一实施例提供的性能测试系统的结构示意图。
图2是本发明一实施例提供的性能测试方法的流程示意图。
图3是本发明另一实施例提供的性能测试方法的流程示意图。
图4是本发明一实施例提供的性能测试装置的结构示意图。
图5是本发明另一实施例提供的性能测试装置的结构示意图。
图6是本发明再一实施例提供的性能测试装置的结构示意图。
图7是本发明还一实施例提供的性能测试装置的结构示意图。
图8是本发明一实施例提供的电子设备的实体结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚明白,下面结合附图对本发明实施例做进一步详细说明。在此,本发明的示意性实施例及其说明用于解释本发明,但并不作为对本发明的限定。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。
为了便于理解本申请提供的技术方案,下面先对本申请技术方案的相关内容进行说明。对被测对象的性能测试通常是在所述被测对象业务不繁忙或者空闲的时段进行,例如夜间或者节假日的时间,这就要求对被测对象的性能测试能够无人值守和自动化的进行,以解放测试人员。本发明实施例提供的性能测试方法能够实现对被测对象的无人值守地、连续地和自动化地性能测试。
图1是本发明一实施例提供的性能测试系统的结构示意图,如图1所示,本发明实施例提供的性能测试系统包括性能测试主控制机1、至少一个性能测试代理机2和被测对象3,其中:
性能测试主控制机1与每个性能测试代理机2通信连接,性能测试主控制机1与被测对象3通信连接,被测对象3与每个性能测试代理机2通信连接。其中,性能测试主控制机1包括但不限于台式机,性能测试代理机2包括但不限于服务器,被测对象3包括但不限于服务器。
性能测试主控制机1可以通过调度器调度N个测试任务集有顺序地执行,并且可以设置每个测试任务集的执行起始时间。每个测试任务集至少包括性能测任务,还可以包括前置任务和后置任务。在执行前置任务时,性能测试主控制机1可以直接连接被测对象3执行一系列远程命令变更被测对象3的测试环境。在执行性能测试任务时,性能测试主控制机1将所述性能测试任务发送至每个性能测试代理机2,并调度各个性能测试代理机2共同完成所述性能测试任务。在执行后置任务时,性能测试主控制机1可以直接连接被测对象3执行一系列远程命令变更被测环境,以恢复在前置任务之后变更的被测对象3的测试环境,将测试环境恢复到执行本测试任务集之前的状态。其中,N为大于等于1的正整数。
性能测试主控制机1用于执行本发明实施例提供的性能测试方法,性能测试代理机2用于执行性能测试任务,被测对象3是性能测试的对象。
图2是本发明一实施例提供的性能测试方法的流程示意图,如图2所示,本发明实施例提供的性能测试方法,包括:
S201、执行前置任务以使得被测对象的测试环境满足测试要求;
具体地,在对被测对象进行性能测试时,性能测试主控制机可以先执行前置任务,以使得被测对象的测试环境满足测试要求,即通过前置任务使所述被测对象的测试环境满足后续性能任务对测试环境的要求。其中,前置任务是预先设置的,根据实际需要进行设置,本发明实施例不做限定。
例如,所述性能测试主控制机可以通过调度器发起前置任务,连接所述被测对象,通过执行远程命令,变更所述被测对象的当前环境参数,使所述被测对象的当前环境参数满足后续性能任务的要求,从而使所述被测对象的测试环境满足测试要求。其中,所述远程命令根据实际需要进行设置,本发明实施例不做限定。
S202、发送性能测试任务给至少一个性能测试代理机,以使得所述至少一个性能测试代理机执行所述性能测试任务以完成对所述被测对象的性能测试。
具体地,所述性能测试主控制机在执行完成所述前置任务之后,将性能测试任务发送给至少一个性能测试代理机,每个性能测试代理机会接收所述性能测试任务,然后所述至少一个性能测试代理机会共同执行所述性能测试任务对所述被测对象进行性能测试,在所述性能测试任务执行完成之后即完成对所述被测对象的性能测试。其中,所述性能测试任务是预设的,根据实际需要进行设置,本发明实施例不做限定。所述性能测试代理机的数量根据实际需要进行设置,本发明实施例不做限定。
例如,所述性能测试主控制机连接N个性能测试代理机(N>=1),将所述性能测试任务对应的性能测试任务计划发送到每个性能测试代理机,远程调度N个性能测试代理机共同执行所述性能测试任务对应的性能测试任务计划以完成对所述被测对象的性能测试工作。其中,所述性能测试任务计划是执行性能测试任务的配置文件,每个性能测试任务包括性能测试任务计划,所述性能测试任务计划包括:(1)性能测试代理机的数量;(2)每个性能测试代理机的并发用户数;(3)每个性能测试代理机的迭代任务内容;(4)每个性能测试代理机上的每个用户执行迭代任务之间的步长;(5)每个代理机上的迭代次数或总执行时间。
本发明实施例提供的性能测试方法,执行前置任务以使得被测对象的测试环境满足测试要求,然后发送性能测试任务给至少一个性能测试代理机,以使得至少一个性能测试代理机执行性能测试任务以完成对被测对象的性能测试,能够自动更改被测对象的测试环境,实现无人值守的自动化测试,提高了性能测试的效率。
图3是本发明另一实施例提供的性能测试方法的流程示意图,如图3所示,在上述各实施例的基础上,进一步地,所述执行前置任务以使得被测对象的测试环境满足测试要求包括:
S2011、连接所述被测对象;
具体地,所述性能测试主控制机可以通过所述被测对象的IP地址连接所述被测对象,以与所述被测对象建立通信连接。
S2012、执行预设的远程命令,以变更所述被测对象的环境参数。
具体地,所述性能测试主控制机在与所述被测对象建立通信连接之后,可以执行预设的远程命令,以变更所述被测对象的环境参数,使得所述被测对象的测试环境满足测试要求。
例如,所述被测对象为服务器A,IP地址为192.168.90.102。所述性能测试主控制机使用SSH登录服务器A:ssh-l root 192.168.90.102,然后通过远程命令对服务器A进行远程操控。
在服务器A创建文件目录:mkdir-p/home/update/20200816
所述性能测试主控制机将即将部署的应用上传并存储到创建的文件目录:scp-r/home/SAC/apache-tomcat-7.0.37/webapps/APP/v2.0root@192.168.90.102:/home/update/20200816/
在服务器A上停止应用服务:sh/home/SAC/apache-tomcat-7.0.37/bin/shutdown.sh执行如下远程命令在服务器A上备份应用文件:
mkdir-p/home/bak/20200816
tar-czvf/home/bak/20200816/APP-current.tar.gz/home/SAC/apache-tomcat-7.0.37/webapps/APP/*
执行如下远程命令更新在服务器A上备份应用文件:
cp-f/home/SAC/apache-tomcat-7.0.37/webapps/APP/WEB-INF/classes/*.*/home/update/20200816/APP/WEB-INF/classes/
rm-rf/home/SAC/apache-tomcat-7.0.37/webapps/APP
cp-r/home/update/20200816/APP/home/SAC/apache-tomcat-7.0.37/webapps/APP
设置服务器A的操作系统虚拟CPU折叠参数为1:schedo-p-o vpm_fold_policy=1在服务器A上启动应用服务:sh/home/SAC/apache-tomcat-7.0.37/bin/startup.sh
所述性能测试主控制机登出服务器A:logout 192.168.90.102
在上述各实施例的基础上,进一步地,本发明实施例提供的性能测试方法还包括:
执行后置任务以使得所述被测对象的测试环境恢复到原始状态。
具体地,在所述性能测试任务执行完成之后,由于前置任务的执行变更了所述被测对象的测试环境,所述性能测试主控制机可以执行后置任务以使得所述被测对象的测试环境恢复到原始状态,可理解的是所述后置任务可以是所述前置任务的反向操作。其中,后置任务是预先设置的,根据实际需要进行设置,本发明实施例不做限定。
例如,所述性能测试主控制机可以通过调度器发起后置任务,连接所述被测对象,通过执行远程命令,变更所述被测对象的当前环境参数,使所述被测对象的当前环境参数恢复到执行所述前置任务之前的状态。其中,所述后置任务的远程命令是预设的,可以是所述前置任务的远程命令的反向操作。
例如,对于服务器A,在执行完成对服务器A的测试任务之后,所述性能测试主控制机可以执行后置任务恢复服务器A的测试环境的原始状态。
所述性能测试主控制机使用SSH登录服务器A:ssh-l root 192.168.90.102,然后通过远程命令对服务器A进行操控。
在服务器A上停止应用的服务:sh/home/SAC/apache-tomcat-7.0.37/bin/shutdown.sh
执行如下远程命令在服务器A上解压上一版本应用:
mkdir/home/bak/20200816/APP
tar-zxvf/home/bak/20200816/APP-current.tar.gz
执行如下远程命令在服务器A上更换应用版本为原版本:
cp-f/home/SAC/apache-tomcat-7.0.37/webapps/APP/WEB-INF/classes/*.*/home/bak/20200816/APP/WEB-INF/classes/
rm-rf/home/SAC/apache-tomcat-7.0.37/webapps/APP
cp-r/home/bak/20200816/APP/home/SAC/apache-tomcat-7.0.37/webapps/APP
在服务器A上启动应用服务:sh/home/SAC/apache-tomcat-7.0.37/bin/startup.sh
所述性能测试主控制机登出服务器A:logout 192.168.90.102
在上述各实施例的基础上,进一步地,本发明实施例提供的性能测试方法还包括:
依次执行多个测试任务集,所述多个测试任务集中每个测试任务集包括一个性能测试任务。
具体地,所述性能测试主控制机在对所述被测对象的性能测试时,可以依次执行多个测试任务集,所述多个测试任务集中每个测试任务集包括一个性能测试任务。其中,多个测试任务集中的测试任务可以按预先设定的先后顺序依次执行,也可以按照每个测试任务集的执行起始时间,依次执行。
例如,所述多个测试任务集包括测试任务集1,测试任务集2和测试任务集3,测试任务集1,测试任务集2和测试任务集3所需要的测试环境不同。测试任务集1包括前置任务1、性能测试任务1和后置任务1,测试任务集2包括前置任务2、性能测试任务2和后置任务2,测试任务集3包括前置任务3、性能测试任务3和后置任务3。
例如,所述多个测试任务集包括测试任务集4和测试任务集5,测试任务集4需要变更所述被测对象的测试环境,测试任务集5无需变更所述被测对象的测试环境。测试任务集4包括前置任务4、性能测试任务4和后置任务4,测试任务集5包括性能测试任务5。
例如,所述多个测试任务集包括测试任务集6和测试任务集7,测试任务集6和测试任务集7需要变更所述被测对象的测试环境,并且测试任务集6和测试任务集7使用相同的测试环境。测试任务集6包括前置任务6和性能测试任务6,测试任务集7包括性能测试任务7和后置任务7。后置任务7将前置任务6变更的测试环境恢复到原始状态。
例如,所述多个测试任务集包括测试任务集8和测试任务集9。测试任务集8包括性能测试任务8和后置任务8,测试任务集7包括性能测试任务7。性能测试任务8本身会在执行过程中变更所述被测对象的测试环境(例如,数据库的存量数据),后置任务8会将变更的所述被测对象的测试环境恢复。
下面以2个测试任务集的执行过程为例来说明本发明实施例提供的性能测试方法的实现过程。每个测试任务集对应一个场景。
2个测试任务集包括测试任务集x和测试任务集y,测试任务集x包括前置任务x、性能测试任务x和后置任务x。测试任务集y包括前置任务y、性能测试任务y和后置任务y。测试任务集x包括的性能测试任务x为对服务器A(操作系统为AIX)发起性能测试,业务类型为实时贷记业务,要求总TPS为每秒1000笔业务,共执行24小时。性能测试任务x由5台性能测试代理机共同完成,即每台性能测试代理机分担每秒200笔业务的性能压力。每台性能测试代理机设置20个并发用户(或并发线程)来实现每秒200笔业务的性能压力,即每个用户(或线程)分担每秒10笔业务的性能压力。每个性能测试代理机的迭代任务内容均为对服务器A发起实时贷记业务。每个用户执行迭代任务之间的步长(间隔)是1000毫秒/10=100毫秒。总执行时间为24小时。测试任务集y包括的性能测试任务y与测试任务集x包括的性能测试任务x相同。
测试任务集x的执行起始时间为周六上午9点整,测试任务集x执行完成之后直接启动测试任务集y的执行。
当时间为周六上午9点整时,所述性能测试主控制机执行测试任务集x的过程如下:
1、执行前置任务x:
所述性能测试主控制机直接连接服务器A执行远程命令变更被测环境,在服务器A上更换应用版本为v1.0并更改操作系统虚拟CPU折叠参数为0。
(1)登录服务器A
使用SSH登录远程被测服务器:ssh-l root 192.168.90.102
在服务器A上创建文件目录:mkdir-p/home/update/20200815
(2)上传文件
将要部署的应用上传到创建的文件目录:scp-r/home/SAC/apache-tomcat-7.0.37/webapps/APP/v1.0
root@192.168.90.102:/home/update/20200815/
(3)停止应用服务
sh/home/SAC/apache-tomcat-7.0.37/bin/shutdown.sh
(4)备份应用文件
mkdir-p/home/bak/20200815
tar-czvf/home/bak/20200815/APP-current.tar.gz/home/SAC/apache-tomcat-7.0.37/webapps/APP/*
(5)更新应用文件
1.cp-f/home/SAC/apache-tomcat-7.0.37/webapps/APP/WEB-INF/classes/*.*/home/update/20200815/APP/WEB-INF/classes/
2.rm-rf/home/SAC/apache-tomcat-7.0.37/webapps/APP
3.cp-r/home/update/20200815/APP/home/SAC/apache-tomcat-7.0.37/webapps/APP
(6)改变操作系统虚拟CPU折叠参数
schedo-p-o vpm_fold_policy=0(1为打开,0为关闭)
(7)启动服务
sh/home/SAC/apache-tomcat-7.0.37/bin/startup.sh
(8)登出
logout 192.168.90.102
2、性能测试任务x
执行性能测试任务x时,所述性能测试主控制机将性能测试任务x对应的性能测试任务计划发送至5个性能测试代理机,并调度这5个性能测试代理机共同完成性能测试任务x的执行工作。
性能测试任务x对应的性能测试任务计划是预先设置的包括:
(1)性能测试代理机数量:5;
(2)每个性能测试代理机的并发用户数:20;
(3)每个性能测试代理机的迭代任务内容:对服务器A发起实时贷记业务;
(4)每个性能测试代理机上的每个用户执行迭代任务之间的步长:100毫秒;
(5)每个性能测试代理机上的迭代次数或总执行时间:总执行时间为24小时。
3、后置任务x
所述性能测试主控制机直接连接服务器A执行远程命令恢复被测环境,在服务器A上更换应用版本为原版本并更改操作系统虚拟CPU折叠参数为原值1。
(1)登录服务器A
使用SSH登录远程被测服务器:ssh-l root 192.168.90.102
(2)停止应用服务
sh/home/SAC/apache-tomcat-7.0.37/bin/shutdown.sh
(3)解压上一版本应用
mkdir/home/bak/20200815/APP
tar-zxvf/home/bak/20200815/APP-current.tar.gz
(4)将应用版本更换为原版本
cp-f/home/SAC/apache-tomcat-7.0.37/webapps/APP/WEB-INF/classes/*.*/home/bak/20200815/APP/WEB-INF/classes/
rm-rf/home/SAC/apache-tomcat-7.0.37/webapps/APP
cp-r/home/bak/20200815/APP/home/SAC/apache-tomcat-7.0.37/webapps/APP
(5)更改操作系统虚拟CPU折叠参数为原值1
schedo-p-o vpm_fold_policy=1(1为打开,0为关闭)
(6)启动服务
sh/home/SAC/apache-tomcat-7.0.37/bin/startup.sh
(7)登出
logout 192.168.90.102
在测试任务集x执行完成之后,所述性能测试主控制机接着执行测试任务集y,测试任务集y的执行过程如下:
1、执行前置任务y:
所述性能测试主控制机直接连接服务器A执行远程命令变更被测环境,在服务器A上更换应用版本为v2.0并确保操作系统虚拟CPU折叠参数为1。
(1)登录服务器A
使用SSH登录远程被测服务器:ssh-l root 192.168.90.102
在服务器A上创建文件目录:mkdir-p/home/update/20200816
(2)上传文件
将要部署的应用上传到创建的文件目录:scp-r/home/SAC/apache-tomcat-7.0.37/webapps/APP/v2.0root@192.168.90.102:/home/update/20200816/
(3)停止应用服务
sh/home/SAC/apache-tomcat-7.0.37/bin/shutdown.sh
(4)备份应用文件
mkdir-p/home/bak/20200816
tar-czvf/home/bak/20200816/APP-current.tar.gz/home/SAC/apache-tomcat-7.0.37/webapps/APP/*
(5)更新应用文件
cp-f/home/SAC/apache-tomcat-7.0.37/webapps/APP/WEB-INF/classes/*.*/home/update/20200816/APP/WEB-INF/classes/
rm-rf/home/SAC/apache-tomcat-7.0.37/webapps/APP
cp-r/home/update/20200816/APP/home/SAC/apache-tomcat-7.0.37/webapps/APP
(6)确保操作系统虚拟CPU折叠参数为1
schedo-p-o vpm_fold_policy=1(1为打开,0为关闭)
(7)启动服务
sh/home/SAC/apache-tomcat-7.0.37/bin/startup.sh
(8)登出
logout 192.168.90.102
2、性能测试任务y
性能测试任务y的具体执行过程与性能测试任务x的执行过程类似,此处不进行赘述。
3、后置任务y
所述性能测试主控制机直接连接服务器A执行远程命令变更被测环境,在服务器A上更换应用版本为原版本。
(1)登录服务器
使用SSH登录远程被测服务器:ssh-l root 192.168.90.102
(2)停止应用服务
sh/home/SAC/apache-tomcat-7.0.37/bin/shutdown.sh
(3)解压上一版本应用
mkdir/home/bak/20200816/APP
tar-zxvf/home/bak/20200816/APP-current.tar.gz
(4)更换应用版本为原版本
cp-f/home/SAC/apache-tomcat-7.0.37/webapps/APP/WEB-INF/classes/*.*/home/bak/20200816/APP/WEB-INF/classes/
rm-rf/home/SAC/apache-tomcat-7.0.37/webapps/APP
cp-r/home/bak/20200816/APP/home/SAC/apache-tomcat-7.0.37/webapps/APP
(5)启动服务
sh/home/SAC/apache-tomcat-7.0.37/bin/startup.sh
(6)登出
logout 192.168.90.102
本发明实施例提供的性能测试方法,能够解决现有技术不能自动化地改变被测环境而限制测试范围的问题。使性能测试人员可以充分利用夜间、节假日的时间对被测对象做充分、全面的多个场景的性能测试,其中不同场景可以有不同的测试环境配置。节约了性能测试整体时间,加快了性能测试进度。同时,各个场景之间可以保持独立,即场景之间不必有执行顺序的约束关系,大大提升了性能测试的灵活性。
图4是本发明一实施例提供的性能测试装置的结构示意图,如图4所示,本发明实施例提供的性能测试装置包括第一执行单元401和测试单元402,其中:
第一执行单元401用于执行前置任务以使得被测对象的测试环境满足测试要求;测试单元402用于发送性能测试任务给至少一个性能测试代理机,以使得所述至少一个性能测试代理机执行所述性能测试任务以完成对所述被测对象的性能测试。
具体地,在对被测对象进行性能测试时,第一执行单元401可以先执行前置任务,以使得被测对象的测试环境满足测试要求,即通过前置任务使所述被测对象的测试环境满足后续性能任务对测试环境的要求。其中,前置任务是预先设置的,根据实际需要进行设置,本发明实施例不做限定。
在执行完成所述前置任务之后,测试单元402将性能测试任务发送给至少一个性能测试代理机,每个性能测试代理机会接收所述性能测试任务,然后所述至少一个性能测试代理机会共同执行所述性能测试任务对所述被测对象进行性能测试,在所述性能测试任务执行完成之后即完成对所述被测对象的性能测试。其中,所述性能测试任务是预设的,根据实际需要进行设置,本发明实施例不做限定。所述性能测试代理机的数量根据实际需要进行设置,本发明实施例不做限定。
本发明实施例提供的性能测试装置,执行前置任务以使得被测对象的测试环境满足测试要求,然后发送性能测试任务给至少一个性能测试代理机,以使得至少一个性能测试代理机执行性能测试任务以完成对被测对象的性能测试,能够自动更改被测对象的测试环境,实现无人值守的自动化测试,提高了性能测试的效率。
图5是本发明另一实施例提供的性能测试装置的结构示意图,如图5所示,在上述各实施例的基础上,进一步地,第一执行单元401包括连接子单元4011和变更子单元4012,其中:
连接子单元4011用于连接所述被测对象;变更子单元4012用于执行预设的远程命令,以变更所述被测对象的环境参数。
具体地,连接子单元4011可以通过所述被测对象的IP地址连接所述被测对象,以与所述被测对象建立通信连接。
在与所述被测对象建立通信连接之后,变更子单元4012可以执行预设的远程命令,以变更所述被测对象的环境参数,使得所述被测对象的测试环境满足测试要求。
图6是本发明再一实施例提供的性能测试装置的结构示意图,如图6所示,在上述各实施例的基础上,进一步地,本发明实施例提供的性能测试装置还包括第二执行单元403,其中:
第二执行单元403用于执行后置任务以使得所述被测对象的测试环境恢复到原始状态。
具体地,在所述性能测试任务执行完成之后,由于前置任务的执行变更了所述被测对象的测试环境,第二执行单元403可以执行后置任务以使得所述被测对象的测试环境恢复到原始状态,可理解的是所述后置任务可以是所述前置任务的反向操作。其中,后置任务是预先设置的,根据实际需要进行设置,本发明实施例不做限定。
图7是本发明还一实施例提供的性能测试装置的结构示意图,如图7所示,在上述各实施例的基础上,进一步地,本发明实施例提供的性能测试装置还包括第三执行单元404,其中:
第三执行单元404用于依次执行多个测试任务集,所述多个测试任务集中每个测试任务集包括一个性能测试任务。
具体地,第三执行单元404在对所述被测对象的性能测试时,可以依次执行多个测试任务集,所述多个测试任务集中每个测试任务集包括一个性能测试任务。其中,多个测试任务集中的测试任务可以按预先设定的先后顺序依次执行,也可以按照每个测试任务集的执行起始时间,依次执行。
本发明实施例提供的装置的实施例具体可以用于执行上述各方法实施例的处理流程,其功能在此不再赘述,可以参照上述方法实施例的详细描述。
图8是本发明一实施例提供的电子设备的实体结构示意图,如图8所示,该电子设备可以包括:处理器(processor)801、通信接口(Communications Interface)802、存储器(memory)803和通信总线804,其中,处理器801,通信接口802,存储器803通过通信总线804完成相互间的通信。处理器801可以调用存储器803中的逻辑指令,以执行如下方法:执行前置任务以使得被测对象的测试环境满足测试要求;发送性能测试任务给至少一个性能测试代理机,以使得所述至少一个性能测试代理机执行所述性能测试任务以完成对所述被测对象的性能测试。
此外,上述的存储器803中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
本实施例公开一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各方法实施例所提供的方法,例如包括:执行前置任务以使得被测对象的测试环境满足测试要求;发送性能测试任务给至少一个性能测试代理机,以使得所述至少一个性能测试代理机执行所述性能测试任务以完成对所述被测对象的性能测试。
本实施例提供一种计算机可读存储介质,所述计算机可读存储介质存储计算机程序,所述计算机程序使所述计算机执行上述各方法实施例所提供的方法,例如包括:执行前置任务以使得被测对象的测试环境满足测试要求;发送性能测试任务给至少一个性能测试代理机,以使得所述至少一个性能测试代理机执行所述性能测试任务以完成对所述被测对象的性能测试。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在本说明书的描述中,参考术语“一个实施例”、“一个具体实施例”、“一些实施例”、“例如”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施例而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (10)

1.一种性能测试方法,其特征在于,包括:
执行前置任务以使得被测对象的测试环境满足测试要求;
发送性能测试任务给至少一个性能测试代理机,以使得所述至少一个性能测试代理机执行所述性能测试任务以完成对所述被测对象的性能测试。
2.根据权利要求1所述的方法,其特征在于,所述执行前置任务以使得被测对象的测试环境满足测试要求包括:
连接所述被测对象;
执行预设的远程命令,以变更所述被测对象的环境参数。
3.根据权利要求1所述的方法,其特征在于,还包括:
执行后置任务以使得所述被测对象的测试环境恢复到原始状态。
4.根据权利要求1至3任一项所述的方法,其特征在于,还包括:
依次执行多个测试任务集,所述多个测试任务集中每个测试任务集包括一个性能测试任务。
5.一种性能测试装置,其特征在于,包括:
第一执行单元,用于执行前置任务以使得被测对象的测试环境满足测试要求;
测试单元,用于发送性能测试任务给至少一个性能测试代理机,以使得所述至少一个性能测试代理机执行所述性能测试任务以完成对所述被测对象的性能测试。
6.根据权利要求5所述的装置,其特征在于,所述第一执行单元包括:
连接子单元,用于连接所述被测对象;
变更子单元,用于执行预设的远程命令,以变更所述被测对象的环境参数。
7.根据权利要求5所述的装置,其特征在于,还包括:
第二执行单元,用于执行后置任务以使得所述被测对象的测试环境恢复到原始状态。
8.根据权利要求5至7任一项所述的装置,其特征在于,还包括:
第三执行单元,用于依次执行多个测试任务集,所述多个测试任务集中每个测试任务集包括一个性能测试任务。
9.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至4任一项所述方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至4任一项所述方法的步骤。
CN202010893614.2A 2020-08-31 2020-08-31 一种性能测试方法及装置 Pending CN112100011A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010893614.2A CN112100011A (zh) 2020-08-31 2020-08-31 一种性能测试方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010893614.2A CN112100011A (zh) 2020-08-31 2020-08-31 一种性能测试方法及装置

Publications (1)

Publication Number Publication Date
CN112100011A true CN112100011A (zh) 2020-12-18

Family

ID=73756758

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010893614.2A Pending CN112100011A (zh) 2020-08-31 2020-08-31 一种性能测试方法及装置

Country Status (1)

Country Link
CN (1) CN112100011A (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102075384A (zh) * 2010-12-20 2011-05-25 创新科存储技术有限公司 一种性能测试系统及方法
CN109491887A (zh) * 2018-09-28 2019-03-19 深圳壹账通智能科技有限公司 测试环境部署方法、装置、计算机设备及存储介质
CN110347559A (zh) * 2019-07-18 2019-10-18 浪潮商用机器有限公司 一种服务器功耗的测试方法、装置、设备及可读存储介质
CN110928774A (zh) * 2019-11-07 2020-03-27 杭州顺网科技股份有限公司 一种基于节点式的自动化测试系统
CN111104273A (zh) * 2019-12-17 2020-05-05 深圳忆联信息系统有限公司 基于批量任务的自动化分配测试方法、装置和计算机设备

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102075384A (zh) * 2010-12-20 2011-05-25 创新科存储技术有限公司 一种性能测试系统及方法
CN109491887A (zh) * 2018-09-28 2019-03-19 深圳壹账通智能科技有限公司 测试环境部署方法、装置、计算机设备及存储介质
CN110347559A (zh) * 2019-07-18 2019-10-18 浪潮商用机器有限公司 一种服务器功耗的测试方法、装置、设备及可读存储介质
CN110928774A (zh) * 2019-11-07 2020-03-27 杭州顺网科技股份有限公司 一种基于节点式的自动化测试系统
CN111104273A (zh) * 2019-12-17 2020-05-05 深圳忆联信息系统有限公司 基于批量任务的自动化分配测试方法、装置和计算机设备

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
李庆义等编著: "《软件测试技术》", 北京:中国铁道出版社, pages: 211 - 219 *

Similar Documents

Publication Publication Date Title
CN110389900B (zh) 一种分布式数据库集群测试方法、装置及存储介质
CN109582466A (zh) 一种定时任务执行方法、分布式服务器集群及电子设备
JP2020518926A (ja) 分散コンピューティングシステムのための、バックアップおよび復元フレームワーク
CN105512029A (zh) 一种测试智能终端的方法、服务器及系统
CN106371881B (zh) 一种用于服务器内程序版本更新的方法和系统
CN108268305A (zh) 用于虚拟机自动扩缩容的系统和方法
CN113742031A (zh) 节点状态信息获取方法、装置、电子设备及可读存储介质
CN110457197A (zh) 服务测试方法、装置、计算机设备和存储介质
CN113377665A (zh) 基于容器技术的测试方法、装置、电子设备及存储介质
CN115114219B (zh) 一种pci-e拓扑方法、装置、设备及存储介质
CN116400987B (zh) 持续集成方法、装置、电子设备及存储介质
CN112100011A (zh) 一种性能测试方法及装置
CN115129574A (zh) 一种代码测试方法和装置
CN117009238A (zh) 数据测试方法、装置、电子设备、存储介质和程序产品
CN114116487B (zh) 压力测试方法、装置、电子设备及存储介质
CN114328026B (zh) 一种虚拟磁盘备份方法、装置、设备及介质
CN113326192A (zh) 用于移动端的应用测试方法、装置、设备及存储介质
CN111740869B (zh) 基于物理网卡的kubernetes网络实现方法、系统、设备及介质
WO2017096889A1 (zh) 系统升降级的方法和装置
CN109525721A (zh) 一种动态备份、删除和恢复应用及数据的方法
CN106095697B (zh) 一种数据固化存储的方法、装置和系统
CN110971665A (zh) 一种对接多类型存储的管理方法、系统、设备及存储介质
CN111614649B (zh) 关闭tcp短连接的方法及装置
CN113297158B (zh) 一种云安全产品管理方法、装置、设备及存储介质
CN116501554A (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