CN114625654A - 一种测试方法及其相关设备 - Google Patents
一种测试方法及其相关设备 Download PDFInfo
- Publication number
- CN114625654A CN114625654A CN202210278161.1A CN202210278161A CN114625654A CN 114625654 A CN114625654 A CN 114625654A CN 202210278161 A CN202210278161 A CN 202210278161A CN 114625654 A CN114625654 A CN 114625654A
- Authority
- CN
- China
- Prior art keywords
- resource
- test
- task
- processed
- test task
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/3688—Test management for test execution, e.g. scheduling of test suites
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/3684—Test management for test design, e.g. generating new test cases
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3696—Methods or tools to render software testable
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
Abstract
本申请公开了一种测试方法及其相关设备,该方法包括:在接收到用户针对待处理测试任务触发的自动测试请求之后,先利用该自动测试请求所携带的其测试对象的信息索引标识,从预先构建的分析信息索引数据库中查询到该信息索引标识对应的测试调度参考信息,以使该测试调度参考信息能够表示出在针对该待处理测试任务进行资源调度时所需达到的最低条件;再根据该测试调度参考信息、以及资源池的当前状态,确定该待处理测试任务的资源配置及其任务参数;最后,按照该资源配置及其任务参数,执行待处理测试任务,如此能够实现自动执行待处理测试任务的目的,从而能够有效地避免人为驱动测试任务所造成的不良影响,进而能够有效地减少测试过程的资源消耗。
Description
技术领域
本申请涉及计算机技术领域,尤其涉及一种测试方法及其相关设备。
背景技术
目前,对于一些测试任务来说,在设计了测试用例并通过评审之后,由测试人员根据测试用例中描述的规程一步步执行测试,得到实际结果与期望结果的比较。
然而,因上述测试方案是人为驱动的,使得该测试方案需要消耗大量资源(例如,人力资源等)。
发明内容
为了解决上述技术问题,本申请提供了一种测试方法及其相关设备,能够有效地减少测试过程的资源消耗。
为了实现上述目的,本申请实施例提供的技术方案如下:
本申请实施例提供一种测试方法,所述方法包括:
接收用户针对待处理测试任务触发的自动测试请求;其中,所述自动测试请求携带有所述待处理测试任务的测试对象的信息索引标识;
从预先构建的分析信息索引数据库中查询所述信息索引标识对应的测试调度参考信息;其中,所述测试调度参考信息用于表示在针对所述待处理测试任务进行资源调度时所需达到的最低条件;
根据资源池的当前状态、以及所述测试调度参考信息,确定所述待处理测试任务的资源配置以及所述资源配置的任务参数;
按照所述资源配置以及所述资源配置的任务参数,执行所述待处理测试任务。
在一种可能的实施方式中,所述测试调度参考信息包括测试任务重复执行次数低位拐点、被测服务资源需求低位拐点、以及所述被测服务资源需求低位拐点对应的每秒查询率QPS最大值中的至少一个。
在一种可能的实施方式中,所述测试调度参考信息包括测试任务重复执行次数低位拐点、被测服务资源需求低位拐点、以及所述被测服务资源需求低位拐点对应的QPS最大值;
所述根据资源池的当前状态、以及所述测试调度参考信息,确定所述待处理测试任务的资源配置以及所述资源配置的任务参数,包括:
依据所述资源池的当前状态、以及所述被测服务资源需求低位拐点,对所述待处理测试任务进行资源分配处理,得到所述待处理测试任务的资源配置;
依据所述测试任务重复执行次数低位拐点、以及所述被测服务资源需求低位拐点对应的QPS最大值,确定所述资源配置的任务参数。
在一种可能的实施方式中,所述依据所述资源池的当前状态、以及所述被测服务资源需求低位拐点,对所述待处理测试任务进行资源分配处理,得到所述待处理测试任务的资源配置,包括:
根据所述资源池的当前状态,确定所述资源池的当前空闲资源;
根据所述当前空闲资源、以及所述被测服务资源需求低位拐点,对所述待处理测试任务进行资源分配处理,得到所述待处理测试任务的资源配置。
在一种可能的实施方式中,所述方法还包括:
获取预估任务密度;其中,所述预估任务密度用于表示预测在所述待处理测试任务的执行期间同时执行的测试任务数量;
所述根据所述当前空闲资源、以及所述被测服务资源需求低位拐点,对所述待处理测试任务进行资源分配处理,得到所述待处理测试任务的资源配置,包括:
根据所述预估任务密度、所述当前空闲资源、以及所述被测服务资源需求低位拐点,对所述待处理测试任务进行资源分配处理,得到所述待处理测试任务的资源配置。
在一种可能的实施方式中,所述根据所述预估任务密度、所述当前空闲资源、以及所述被测服务资源需求低位拐点,对所述待处理测试任务进行资源分配处理,得到所述待处理测试任务的资源配置,包括:
根据所述预估任务密度和所述当前空闲资源的资源量,确定资源紧张程度表征数据;
若所述资源紧张程度表征数据满足预设资源紧张条件,则按照所述被测服务资源需求低位拐点,从所述当前空闲资源中对所述待处理测试任务进行资源分配处理,得到所述待处理测试任务的资源配置。
在一种可能的实施方式中,所述方法还包括:
若所述资源紧张程度表征数据不满足预设资源紧张条件,则从预先构建的第一映射关系中查询所述资源紧张程度表征数据在所述被测服务资源需求低位拐点下所对应的第一调高信息;
利用所述第一调高信息、以及所述被测服务资源需求低位拐点,确定待使用资源量;
按照所述待使用资源量,从所述当前空闲资源中对所述待处理测试任务进行资源分配处理,得到所述待处理测试任务的资源配置。
在一种可能的实施方式中,所述预估任务密度是利用在历史时间段内所执行的测试任务的执行描述数据进行预测得到的。
在一种可能的实施方式中,所述依据所述测试任务重复执行次数低位拐点、以及所述被测服务资源需求低位拐点对应的QPS最大值,确定所述资源配置的任务参数,包括:
若所述待处理测试任务的资源配置满足预设最低配置条件,则将所述测试任务重复执行次数低位拐点、以及所述被测服务资源需求低位拐点对应的QPS最大值,确定为所述资源配置的任务参数。
在一种可能的实施方式中,所述方法还包括:
若所述待处理测试任务的资源配置满足预设调高条件,则将所述待处理测试任务的资源配置与所述被测服务资源需求低位拐点进行比较,得到资源富足程度表征值;
从预先构建的第二映射关系中查询所述资源富足程度表征值在所述测试任务重复执行次数低位拐点、以及所述被测服务资源需求低位拐点对应的QPS最大值下所对应的第二调高信息;
利用所述第二调高信息、所述测试任务重复执行次数低位拐点、以及所述被测服务资源需求低位拐点对应的QPS最大值,确定所述资源配置的任务参数。
在一种可能的实施方式中,所述方法还包括:在确定执行完成所述待处理测试任务之后,利用所述待处理测试任务的执行描述数据,更新所述分析信息索引数据库。
本申请实施例还提供了一种测试装置,包括:
接收单元,用于接收用户针对待处理测试任务触发的自动测试请求;其中,所述自动测试请求携带有所述待处理测试任务的测试对象的信息索引标识;
查询单元,用于从预先构建的分析信息索引数据库中查询所述信息索引标识对应的测试调度参考信息;其中,所述测试调度参考信息用于表示在针对所述待处理测试任务进行资源调度时所需达到的最低条件;
确定单元,用于根据资源池的当前状态、以及所述测试调度参考信息,确定所述待处理测试任务的资源配置以及所述资源配置的任务参数;
测试单元,用于按照所述资源配置以及所述资源配置的任务参数,执行所述待处理测试任务。
本申请实施例还提供了一种设备,所述设备包括处理器以及存储器:所述存储器用于存储计算机程序;所述处理器用于根据所述计算机程序执行本申请实施例提供的测试方法的任一实施方式。
本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质用于存储计算机程序,所述计算机程序用于执行本申请实施例提供的测试方法的任一实施方式。
本申请实施例还提供了一种计算机程序产品,所述计算机程序产品在终端设备上运行时,使得所述终端设备执行本申请实施例提供的测试方法的任一实施方式。
与现有技术相比,本申请实施例至少具有以下优点:
本申请实施例提供的技术方案中,在接收到用户针对待处理测试任务触发的自动测试请求之后,先利用该自动测试请求所携带的该待处理测试任务的测试对象的信息索引标识,从预先构建的分析信息索引数据库中查询到该信息索引标识对应的测试调度参考信息,以使该测试调度参考信息能够表示出在针对该待处理测试任务进行资源调度时所需达到的最低条件;再根据该测试调度参考信息、以及资源池的当前状态,确定该待处理测试任务的资源配置以及该资源配置的任务参数;最后,按照该资源配置以及该资源配置的任务参数,执行待处理测试任务,如此能够实现自动执行待处理测试任务的目的,从而能够有效地避免人为驱动测试任务所造成的不良影响(例如,需要消耗大量资源),进而能够有效地减少测试过程的资源消耗。
另外,因测试调度参考信息用于表示出在针对待处理测试任务进行资源调度时所需达到的最低条件(尤其是,所需使用的最低资源量),使得基于该测试调度参考信息所确定的资源配置及其任务参数至少能够达到该最低条件,从而使得该资源配置及其任务参数能够保证该待处理测试任务顺利执行,如此能够有效地避免因针对待处理测试任务所调度的资源不充足而导致该待处理测试任务无法执行或者执行失败的缺陷,从而能够提高针对待处理测试任务的自动执行效果。
此外,因待处理测试任务的资源配置以及该资源配置的任务参数是基于资源池的当前状态进行的,使得该“待处理测试任务的资源配置以及该资源配置的任务参数”更符合该资源池的当前状态,如此能够实现在资源丰富时向该待处理测试任务调度较多资源,并在资源匮乏时向该待处理测试任务调度较少资源的目的,从而有利于提高资源池的使用效果(例如,使用率等)。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1为本申请实施例提供的一种测试方法的流程图;
图2为本申请实施例提供的一种测试***的工程架构示意图;
图3为本申请实施例提供的一种测试装置的结构示意图。
具体实施方式
发明人在针对测试任务的研究中发现,在一些情况(例如,测试任务高峰期等情况)下,可能会因资源池的空闲资源无法满足所有测试任务的资源调度需求,如此会出现大量测试任务因其分配所得的资源不足而导致无法执行或者执行失败的现象。
基于上述发现,为了解决背景技术部分所示的技术问题,本申请实施例提供了一种测试方法,其具体可以包括:在接收到用户针对待处理测试任务触发的自动测试请求之后,先利用该自动测试请求所携带的该待处理测试任务的测试对象的信息索引标识,从预先构建的分析信息索引数据库中查询到该信息索引标识对应的测试调度参考信息,以使该测试调度参考信息能够表示出在针对该待处理测试任务进行资源调度时所需达到的最低条件;再根据该测试调度参考信息、以及资源池的当前状态,确定该待处理测试任务的资源配置以及该资源配置的任务参数;最后,按照该资源配置以及该资源配置的任务参数,执行待处理测试任务,如此能够实现自动执行待处理测试任务的目的,从而能够有效地避免人为驱动测试任务所造成的不良影响(例如,需要消耗大量资源),进而能够有效地减少测试过程的资源消耗。
另外,因测试调度参考信息用于表示出在针对待处理测试任务进行资源调度时所需达到的最低条件(尤其是,所需使用的最低资源量),使得基于该测试调度参考信息所确定的资源配置及其任务参数至少能够达到该最低条件,从而使得该资源配置及其任务参数能够保证该待处理测试任务顺利执行,如此能够有效地避免因针对待处理测试任务所调度的资源不充足而导致该待处理测试任务无法执行或者执行失败的现象,从而能够提高针对待处理测试任务的自动执行效果。
此外,本申请实施例不限定测试方法的执行主体,例如,本申请实施例提供的测试方法可以应用于终端设备或服务器等数据处理设备。其中,终端设备可以为智能手机、计算机、个人数字助理(Personal Digital Assitant,PDA)或平板电脑等。服务器可以为独立服务器、集群服务器或云服务器。
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
方法实施例一
参见图1,该图为本申请实施例提供的一种测试方法的流程图。
本申请实施例提供的测试方法,包括S1-S4:
S1:接收用户针对待处理测试任务触发的自动测试请求。
其中,用户是指自动测试请求的触发者;而且本申请实施例不限定该用户,例如,其可以是待处理测试任务的相关人员(例如,测试人员、评审人员、程序编写人员等)。
待处理测试任务用于针对某一被测服务(例如,XXX软件、YYY应用程序等)进行功能测试。也就是,上述“某一被测服务”就是待处理测试任务的测试对象。
需要说明的是,本申请实施例不限定上述“待处理测试任务”;而且本申请实施例也不限定上述“某一被测服务”。
自动测试请求用于请求自动执行待处理测试任务;而且该自动测试请求携带有该待处理测试任务的测试对象的信息索引标识。
上述“信息索引标识”用于唯一标识该待处理测试任务的测试对象,以便后续能够使用该“信息索引标识”查询一些与该测试对象相关的信息(例如,下文“测试调度参考信息”)。
另外,本申请实施例不限定上述“信息索引标识”,例如,其可以是待处理测试任务的测试对象的名称。又如,“信息索引标识”可以是通过针对待处理测试任务的测试对象的名称进行数值转换处理得到的。
需要说明的是,本申请实施例不限定数值转换处理的实施方式,例如,其可以采用现有的或者未来出现的任意一种能够实现从文字转换成数值的方式(例如,word2vec)进行实施。
基于上述S1的相关内容可知,当用户想要自动执行待处理测试任务时,该用户可以在测试设备上针对该待处理测试任务触发自动测试请求,以使该测试设备能够基于该自动测试请求所携带的信息索引标识,实现针对该待处理测试任务自动地执行资源调度处理以及任务执行处理,如此能够实现针对该待处理测试任务的测试对象(例如,XXX软件等)的自动测试过程。
需要说明的是,上述“测试设备”是指用于执行本申请实施例提供的测试方法的任意一种数据处理设备(例如,终端设备或者服务器)。
S2:从预先构建的分析信息索引数据库中查询信息索引标识对应的测试调度参考信息。
其中,分析信息索引数据库用于记录大量候选索引标识对应的测试调度候选信息。
另外,本申请实施例不限定上述“分析信息索引数据库”,例如,其具体可以包括第1个候选索引标识与第1个测试调度候选信息、第2个候选索引标识与第2个测试调度候选信息、……、以及第K个候选索引标识与第K个测试调度候选信息。其中,第k个候选索引标识用于唯一表示第k个候选被测服务(例如,ZZZ软件等)。第k个测试调度候选信息用于表示在针对第k个候选被测服务进行功能测试时(也就是,在执行用于针对该第k个候选被测服务进行功能测试的测试任务时)所需达到的最低条件。k为正整数,k≤K,K为正整数。
需要说明的是,上述“第k个测试调度候选信息”的相关内容类似于下文“测试调度参考信息”的相关内容。
可见,在获取到待处理测试任务的测试对象的信息索引标识之后,可以将该信息索引标识与分析信息索引数据库中的K个候选索引标识进行匹配,以便在确定该信息索引标识与第v个候选索引标识匹配成功时,可以直接将该第v个候选索引标识对应的第v个测试调度候选信息,确定为该信息索引标识对应的测试调度参考信息。其中,v为正整数,v∈{1,2,……,K}。
此外,本申请实施例不限定上述“分析信息索引数据库”的构建过程,请参见下文方法实施例二所示的上述“分析信息索引数据库”的相关内容。
上述“测试调度参考信息”用于表示在针对待处理测试任务进行资源调度时所需达到的最低条件(例如,待处理测试任务的重复执行次数所需达到的最小值、以及待处理测试任务的最低资源需求量等)。
另外,本申请实施例不限定上述“测试调度参考信息”,例如,其具体可以包括测试任务重复执行次数低位拐点、被测服务资源需求低位拐点、以及被测服务资源需求低位拐点对应的每秒查询率(QPS,Queries-per-second)最大值中的至少一个。
上述“测试任务重复执行次数低位拐点”是指待处理测试任务的重复执行次数所需达到的最小值,以使该待处理测试任务在该“测试任务重复执行次数低位拐点”下刚好能够满足测试指标稳定、以及测试结果置信等测试有效性条件,如此能够保证测试任务有效性,从而能够避免测试无效的发生。
可见,如果在执行待处理测试任务时实际所使用的重复执行次数低于上述“测试任务重复执行次数低位拐点”,则会导致针对该待处理测试任务的实际测试结果无法满足测试结果置信度需求,从而导致测试无效的现象;但是,如果在执行待处理测试任务时实际所使用的重复执行次数等于或者高于该“测试任务重复执行次数低位拐点”,则会使得针对该待处理测试任务的实际测试结果能够满足测试结果置信度需求,从而能够保证测试任务有效性。
基于上述两段内容可知,在针对待处理测试任务进行自动执行时,可以重复多次执行该待处理测试任务,以便后续能够基于该待处理测试任务的多次执行数据(例如,执行时长、是否完成任务、实际资源使用等数据)进行分析,如此能够有效地避免偶然事件所造成的不良影响,从而有利于提高针对该待处理测试任务的自动执行效果。
上述“被测服务资源需求低位拐点”用于表示被测服务(也就是,待处理测试任务的测试对象)的最低资源需求量,以使该被测服务在该“被测服务资源需求低位拐点”下刚好能够满足该被测服务能够正常启动、且能稳定持续地接收流量等条件,如此能够保证环境有效性,从而能够有效地避免环境不可用的发生。
可见,如果针对待处理测试任务实际所分配的资源量低于上述“被测服务资源需求低位拐点”,则会因无法满足被测服务可用性的资源量边界值而导致环境不可用,从而导致测试任务执行失败;但是,如果针对待处理测试任务实际所分配的资源等于或者大于该“被测服务资源需求低位拐点”,则可以满足被测服务可用性的资源边界值,从而使得该待处理测试任务的测试对象能够正常启动、且能稳定持续地接收流量,进而能够保证该待处理测试任务的环境有效性。
上述“被测服务资源需求低位拐点对应的QPS最大值”用于表示在该被测服务(也就是,待处理测试任务的测试对象)的最低资源需求量下可以承接的最大QPS,以保证不因测试QPS过大而导致环境不可用。需要说明的是,在本申请中,QPS可以理解为每一秒执行的测试用例数量。
可见,当针对待处理测试任务实际所分配的资源等于上述“被测服务资源需求低位拐点”时,如果在执行待处理测试任务时实际所使用的QPS高于上述“被测服务资源需求低位拐点对应的QPS最大值”,则会因测试QPS过大而导致上述“针对待处理测试任务实际所分配的资源”发生资源不足现象,从而导致环境不可用,进而导致测试任务执行失败;如果在执行待处理测试任务时实际所使用的QPS等于该“被测服务资源需求低位拐点对应的QPS最大值”,则不仅能够保持环境可用性,还能够达到最大任务并发量,从而能够有效地提高测试效率;如果在执行待处理测试任务时实际所使用的QPS低于上述“被测服务资源需求低位拐点对应的QPS最大值”,则虽然能够保持环境可用性,但是会导致资源没有充分利用。
基于上述S2的相关内容可知,在获取到待处理测试任务的测试对象的信息索引标识之后,可以从预先构建的分析信息索引数据库中查询该信息索引标识对应的测试调度参考信息,以使该测试调度参考信息能够表示出在针对该待处理测试任务进行资源调度时所需达到的最低条件(例如,测试任务重复执行次数最低值、资源量最低需求、以及在该资源量最低需求下最大可以承受的QPS等),从而使得基于该测试调度参考信息所分配的资源能够达到该最低条件,如此能够有效地避免因分配所得资源不足而导致待处理测试任务执行失败的现象,从而能够有效地降低该待处理测试任务执行失败的可能性,进而能够提高该待处理测试任务的自动执行效果。
S3:根据资源池的当前状态、以及测试调度参考信息,确定待处理测试任务的资源配置以及该资源配置的任务参数。
其中,资源池用于向待处理测试任务提供其所需使用的资源;而且本申请实施例不限定该资源池,例如,其可以包括至少一个集群。又如,其也可以包括至少一个服务器。还如,其也可以包括至少一个容器。
上述“资源池的当前状态”用于表示该资源池的实时使用情况(例如,哪些资源处于使用状态、哪些资源处于空闲状态等)。
另外,上述“资源池的当前状态”的获取时间晚于自动测试请求的接收时间,并早于S3的执行时间;而且本申请实施例不限定上述“资源池的当前状态”的获取时间。此外,本申请实施例也不限定上述“资源池的当前状态”的获取方式。
上述“待处理测试任务的资源配置”用于表示分配给该待处理测试任务的资源。
上述“资源配置的任务参数”用于表示针对上述“待处理测试任务的资源配置”所调控的与测试任务执行相关的一些参数(例如,该资源配置最大可接受的QPS以及任务重复执行次数等)。
另外,本申请实施例不限定上述“资源配置的任务参数”,例如,其可以包括:该资源配置最大可接受的QPS、以及该资源配置最大可接受的任务重复执行次数中的至少一个。
为了更好地理解上文“待处理测试任务的资源配置”以及“资源配置的任务参数”,下面以S3的一种可能的实施方式作为示例进行说明。
作为示例,当上文“测试调度参考信息”包括测试任务重复执行次数低位拐点、被测服务资源需求低位拐点、以及该被测服务资源需求低位拐点对应的QPS最大值时,S3具体可以包括S31-S32:
S31:依据资源池的当前状态、以及被测服务资源需求低位拐点,对待处理测试任务进行资源分配处理,得到该待处理测试任务的资源配置,以使该资源配置的资源量能够不低于该被测服务资源需求低位拐点。
本申请实施例中,在获取到资源池的当前状态、以及被测服务资源需求低位拐点之后,可以参考这两方面信息,对待处理测试任务进行资源分配处理,得到该待处理测试任务的资源配置,以使该资源配置能够在保证其资源量不低于该被测服务资源需求低位拐点下尽可能地适应该资源池的当前状态,如此能够有效地避免因针对该待处理测试任务分配所得的资源不充足而导致该待处理测试任务执行失败的现象。
另外,本申请实施例不限定S31的实施方式,为了便于理解,下面结合两种可能的实施方式进行说明。
在第一种可能的实施方式中,S31具体可以包括S311-S312:
S311:根据资源池的当前状态,确定该资源池的当前空闲资源。
其中,当前空闲资源用于表示资源池中正处于空闲状态的资源。
另外,本申请实施例不限定S311的实施方式,例如,可以采用现有的或者未来出现的任意一种空闲资源确定方法进行实施。
此外,本申请实施例不限定S311的执行时间,只要保证该S311的执行时间早于S312即可。
S312:根据资源池的当前空闲资源、以及被测服务资源需求低位拐点,对待处理测试任务进行资源分配处理,得到该待处理测试任务的资源配置。
本申请实施例中,在获取到资源池的当前空闲资源之后,可以参考被测服务资源需求低位拐点,从该当前空闲资源中对待处理测试任务进行资源分配处理,得到该待处理测试任务的资源配置,以使该资源配置能够在保证其资源量不低于该被测服务资源需求低位拐点下尽可能地使用该资源池的当前空闲资源,如此能够有效地避免因针对该待处理测试任务分配所得的资源不充足而导致该待处理测试任务执行失败的现象。
基于上述S311至S312的相关内容可知,在获取到资源池的当前状态之后,可以先依据该当前状态,确定出该资源池的当前空闲资源;再依据被测服务资源需求低位拐点,从该当前空闲资源中对待处理测试任务进行资源分配处理,得到该待处理测试任务的资源配置,以使该资源配置能够在保证其资源量不低于该被测服务资源需求低位拐点下尽可能地使用该资源池的当前空闲资源,如此能够有效地避免因针对该待处理测试任务分配所得的资源不充足而导致该待处理测试任务执行失败的现象。
实际上,在一些应用场景下,通常会在同一时间段内同时执行大量测试任务。基于此,本申请实施例还提供了S31的第二种可能的实施方式,其具体可以包括步骤11-步骤12:
步骤11:根据资源池的当前状态,确定该资源池的当前空闲资源。
需要说明的是,步骤11的相关内容请参见上文S311。
另外,本申请实施例不限定步骤11的执行时间,只要保证该步骤11的执行时间早于步骤12即可。
步骤12:根据预估任务密度、当前空闲资源、以及被测服务资源需求低位拐点,对待处理测试任务进行资源分配处理,得到该待处理测试任务的资源配置。
其中,预估任务密度用于表示预测资源池将要执行的测试任务数量,尤其在待处理测试任务的执行期间同时执行的测试任务数量。
另外,预估任务密度可以利用在历史时间段内所执行的测试任务的执行描述数据进行预测所得。其中,执行描述数据用于描述在一个测试任务的执行期间所产生的相关信息(例如,是否完成测试任务、资源配置是什么、针对该资源配置下所调控的QPS、执行时间段、执行时长、任务重复执行次数等信息)。
需要说明的是,本申请实施例不限定上述“历史时间段”,例如,其可以是上文“自动测试请求”的触发时间点之前一个月(甚至更长时间)。另外,本申请实施例不限定上述“预估任务密度”的预测过程,例如,可以采用现有的或者未来出现的任意一种预测分析方法(例如,基于机器学习模型的方法、大数据挖掘方法等)进行实施。
此外,本申请实施例不限定上述“预估任务密度”的获取时间,只要保证在执行步骤12之前完成执行即可。
本申请实施例不限定步骤12的实施方式,例如,其具体可以包括步骤121-步骤126:
步骤121:根据预估任务密度和当前空闲资源的资源量,确定资源紧张程度表征数据。
其中,资源紧张程度表征数据用于表示资源池的当前空闲资源在预估任务密度下所呈现的资源紧张程度,以使该“资源紧张程度表征数据”能够反映出该当前空闲资源是否能够满足该预估任务密度下测试任务资源需求。
另外,本申请实施例不限定上述“资源紧张程度表征数据”的确定过程,例如,资源紧张程度表征数据=当前空闲资源的资源量÷(预估任务密度×平均任务资源需求)。其中,平均任务资源需求用于表示测试任务所需使用的资源量平均值。
需要说明的是,本申请实施例不限定上述“平均任务资源需求”的获取方式,例如,可以先设定。又如,其也可以为:针对在历史时间段内所执行的测试任务的执行描述数据进行大数据分析处理,得到该平均任务资源需求。
步骤122:判断资源紧张程度表征数据是否满足预设资源紧张条件,若是,则执行下文步骤123;若否,则执行下文步骤124-步骤126。
其中,预设资源紧张条件可以预先设定。例如,当资源紧张程度表征数据越大,则表示在预估任务密度下资源池的当前空闲资源满足测试任务资源调度需求的可能性越小,从而表示资源越紧张时,该预设资源紧张条件可以为:资源紧张程度表征数据高于第一阈值。
基于步骤122的相关内容可知,在获取到资源紧张程度表征数据之后,判断该资源紧张程度表征数据是否满足预设资源紧张条件,如果满足预设资源紧张条件,则表示资源池的当前空闲资源相对预估任务密度来说出现资源紧张现象,故为了保证尽可能多的测试任务有效执行,可以按照各个测试任务的最低资源配置进行资源调度(也就是,步骤123所示的资源分配方式),如此能够有效地保证尽可能多的测试任务能够有效执行;然而,如果不满足,则表示资源池的当前空闲资源相对预估任务密度来说不紧张,故为了更好的完成测试任务,可以按照各个测试任务的较好资源配置进行资源调度(也就是,步骤124-步骤126所示的资源分配方式),如此不仅能够保证这些测试任务顺利完成,还能够保证这些任务以较高质量(或者较快速度)完成,如此有利于提高这些测试任务的自动执行效果。
步骤123:按照被测服务资源需求低位拐点,从当前空闲资源中对待处理测试任务进行资源分配处理,得到该待处理测试任务的资源配置。
本申请实施例中,在确定资源紧张程度表征数据满足预设资源紧张条件时,可以确定资源池的当前空闲资源相对预估任务密度来说比较紧张,故可以直接按照被测服务资源需求低位拐点,从该当前空闲资源中对待处理测试任务进行资源分配处理,得到该待处理测试任务的资源配置,以使该资源配置的资源量等于该被测服务资源需求低位拐点,从而使得该待处理测试任务在该资源配置下恰好能够满足测试指标稳定以及测试结果置信的测试有效性要求,如此能够实现在保证待处理测试任务能够有效执行的前提下尽可能多地降低资源消耗,从而能够有效地保证在待处理测试任务的执行期间尽可能多地有效执行大量测试任务。
步骤124:从预先构建的第一映射关系中查询资源紧张程度表征数据在被测服务资源需求低位拐点下所对应的第一调高信息。
其中,第一映射关系用于记录大量资源紧张程度表征值在各种备选服务资源需求低位拐点下所对应的候选调高信息;而且本申请实施例不限定该第一映射关系,例如,其可以包括表1所示的对应关系。
表1第一映射关系
需要说明的是,对于表1来说,A表示资源紧张程度表征值的个数;B表示备选服务资源需求低位拐点的个数。
基于上述第一映射关系的相关内容可知,在获取到资源紧张程度表征数据之后,可以将待使用二元组(资源紧张程度表征数据,被测服务资源需求低位拐点)与第一映射关系中各个候选二元组(资源紧张程度表征值,备选服务资源需求低位拐点)进行匹配,以便在确定该资源紧张程度表征数据等于第h个资源紧张程度表征值ah,且确定被测服务资源需求低位拐点等于第g个备选服务资源需求低位拐点bg时,可以直接将对应关系Rh,g中所记录的候选调高信息Ch,g,确定为该资源紧张程度表征数据在被测服务资源需求低位拐点下所对应的第一调高信息。其中,h为正整数,h∈{1,2,3,……,A};g为正整数,g∈{1,2,3,……,B}。
另外,本申请实施例不限定第一映射关系的获取方式,例如,可以预先设定。又如,其也可以为:针对在历史时间段内所执行的测试任务的执行描述数据进行大数据分析处理,得到该第一映射关系。
上述“第一调高信息”用于表示针对待处理测试任务实际分配的资源量与该被测服务资源需求低位拐点之间的相对关系;而且本申请实施例不限定该“第一调高信息”,例如,其可以是比例,也可以是资源量增加值。
步骤125:利用第一调高信息、以及被测服务资源需求低位拐点,确定待使用资源量。
其中,待使用资源量用于表示针对待处理测试任务实际分配的资源量;而且该待使用资源量不低于上文“被测服务资源需求低位拐点”。
另外,本申请实施例不限定待使用资源量的确定过程(也就是,步骤125的实施方式),为了便于理解,下面结合两个示例进行说明。
示例1,当上述“第一调高信息”用于表示针对待处理测试任务实际分配的资源量与该被测服务资源需求低位拐点之间的比例关系时,步骤125具体可以为:将第一调高信息与被测服务资源需求低位拐点进行相乘,得到待使用资源量。
示例2,当上述“第一调高信息”用于表示针对待处理测试任务实际分配的资源量与该被测服务资源需求低位拐点之间的差值关系时,步骤125具体可以为:将第一调高信息与被测服务资源需求低位拐点进行相加,得到待使用资源量。
步骤126:按照待使用资源量,从当前空闲资源中对待处理测试任务进行资源分配处理,得到该待处理测试任务的资源配置。
本申请实施例中,在获取到待使用资源量之后,可以按照该待使用资源量,从当前空闲资源中对待处理测试任务进行资源分配处理,得到待处理测试任务的资源配置,以使该资源配置的资源量等于该待使用资源量,从而使得该待处理测试任务在该资源配置下不仅能够有效地执行,还能够以尽可能好的执行效果(例如,尽可能快的执行速度等)进行执行,如此有利于提高该待处理测试任务的自动执行效果。
基于上述步骤121至步骤126的相关内容可知,在获取到预估任务密度和当前空闲资源之后,可以先依据该预估任务密度和当前空闲资源,确定资源是否紧张;如果确定资源紧张,则可以直接按照被测服务资源需求低位拐点,从当前空闲资源中对待处理测试任务进行资源分配处理,得到该待处理测试任务的资源配置,以使该待处理测试任务后续能够按照最低资源配置进行执行,从而能够实现在保证待处理测试任务能够有效执行的前提下尽可能多地降低资源消耗,如此能够有效地保证在待处理测试任务的执行期间尽可能多地有效执行大量测试任务;但是,如果确定资源不紧张,则可以先确定待使用资源量,以使该待使用资源量高于该被测服务资源需求低位拐点;再按照该按照待使用资源量,从当前空闲资源中对待处理测试任务进行资源分配处理,得到待处理测试任务的资源配置,如此能够提高待处理测试任务的自动执行效果(例如,提高自动执行效率等)。
基于上述S31的第二种可能的实施方式的相关内容可知,在获取到资源池的当前状态之后,可以先参考该当前状态与预估任务密度,确定资源紧张程度;再按照适用于该资源紧张程度的资源分配方式,针对该待处理测试任务进行资源分配处理,得到该待处理测试任务的资源配置,以使该资源配置能够在保证该待处理测试任务有效执行的前提下尽可能地提高该待处理测试任务的自动执行效果,如此能够实现按照不同资源紧张程度,针对待处理测试任务进行智能化资源分配。
S32:依据测试任务重复执行次数低位拐点、以及被测服务资源需求低位拐点对应的QPS最大值,确定资源配置的任务参数。
作为示例,S32具体可以包括S321-S326:
S321:判断待处理测试任务的资源配置是否满足预设最低配置条件,若是,则执行S322;若否,则执行S323。
其中,预设最低配置条件是指被分配了最低资源配置的测试任务所满足的条件;而且本申请实施例不限定该预设最低配置条件,例如,其具体可以为:资源量等于上文“测试任务重复执行次数低位拐点”。
可见,在获取到待处理测试任务的资源配置之后,可以判断该资源配置的资源量是否等于上文“测试任务重复执行次数低位拐点”,如果等于,则表示该资源配置为该待处理测试任务的最低资源配置,从而可以确定该资源配置满足预设最低配置条件,故可以直接采用该预设最低配置条件所对应的任务参数调控方式(如下文S322所示)进行调控即可。
S322:将测试任务重复执行次数低位拐点、以及被测服务资源需求低位拐点对应的QPS最大值,确定为资源配置的任务参数。
本申请实施例中,在确定待处理测试任务的资源配置满足预设最低配置条件时,可以确定针对该待处理测试任务采用了最低资源配置方式,故为了尽可能地适应该最低资源配置方式,可以直接按照测试任务重复执行次数低位拐点、以及被测服务资源需求低位拐点对应的QPS最大值,针对该“待处理测试任务的资源配置”下最大可接受的QPS以及任务重复执行次数进行调控,得到该资源配置的任务参数,以使该任务参数中所记录的最大可接受的QPS为上述“被测服务资源需求低位拐点对应的QPS最大值”,且使得该任务参数中所记录的最大可接受的任务重复执行次数为上述“测试任务重复执行次数低位拐点”,如此能够实现在保证待处理测试任务有效执行的前提下,尽可能地提高该待处理测试任务的自动执行效果。
S323:判断待处理测试任务的资源配置是否满足预设调高条件,若是,则执行S324-S326;若否,则生成并发送提示信息。
其中,预设调高条件是指被分配了较高资源配置(也就是,高于最低资源配置)的测试任务所满足的条件;而且本申请实施例不限定该预设调高条件,例如,其具体可以为:资源量大于上文“测试任务重复执行次数低位拐点”。
可见,在获取到待处理测试任务的资源配置之后,可以判断该资源配置的资源量是否大于上文“测试任务重复执行次数低位拐点”,如果大于,则可以确定该资源配置满足预设调高条件,故后续可以直接采用该预设调高条件所对应的任务参数调控方式(如下文S324-S326所示)进行调控即可;但是,如果小于,则可以确定该资源配置既不满足预设最低配置条件,也不满足预设调高条件,从而可以确定该资源配置存在缺陷(例如,资源不足等),进而可以推测该资源配置很有可能导致待处理测试任务发生执行失败的现象,故可以直接生成并发送提示信息,以使该提示信息能够向用户告知针对待处理测试任务所分配的资源配置存在问题,从而使得该用户能够基于该提示信息获知这种异常情况,进而使得该用户能够针对这种异常情况采用相应地处理措施(例如,及时地手动结束待处理测试任务的执行流程;或者,记录该待处理测试任务等)。
S324:将待处理测试任务的资源配置与被测服务资源需求低位拐点进行比较,得到资源富足程度表征值。
其中,资源富足程度表征值用于表示针对待处理测试任务实际分配的资源量与被测服务资源需求低位拐点之间的相对关系。
另外,本申请实施例不限定上述“资源富足程度表征值”的确定过程,例如,其具体可以为:将待处理测试任务的资源配置的资源量与被测服务资源需求低位拐点之间的比值,确定为资源富足程度表征值。
S325:从预先构建的第二映射关系中查询资源富足程度表征值在测试任务重复执行次数低位拐点、以及被测服务资源需求低位拐点对应的QPS最大值下所对应的第二调高信息。
其中,第二映射关系用于记录大量资源富足程度值在各种(备选任务重复执行次数低位拐点,候选QPS值)组合下所对应的待使用调高信息;而且本申请实施例不限定该第二映射关系,例如,该第二映射关系类似于上文“第一映射关系”。也就是,第二映射关系可以包括表2所示的对应关系。
表2第二映射关系
需要说明的是,对于表2来说,D表示资源富足程度值的个数;E表示备选任务重复执行次数低位拐点的个数;F表示候选QPS值的个数。
基于上述第二映射关系的相关内容可知,在获取到资源富足程度表征值之后,可以将待使用三元组(资源富足程度表征值,测试任务重复执行次数低位拐点,被测服务资源需求低位拐点对应的QPS最大值)与第二映射关系中各个候选三元组(资源富足程度值,备选任务重复执行次数低位拐点,候选QPS值)进行匹配,以便在确定该资源富足程度表征值等于第w个资源富足程度值dw,上述“测试任务重复执行次数低位拐点”等于第q个备选任务重复执行次数低位拐点eq,以及上述“被测服务资源需求低位拐点对应的QPS最大值”等于第p个候选QPS值f1时,可以直接将对应关系Rw,q,p中所记录的候选调高信息Gw,q,p,确定为第二调高信息。其中,w为正整数,w∈{1,2,3,……,D};q为正整数,q∈{1,2,3,……,E};p为正整数,p∈{1,2,3,……,F}。
另外,本申请实施例不限定第二映射关系的获取方式,例如,可以预先设定。又如,其也可以为:针对在历史时间段内所执行的测试任务的执行描述数据进行大数据分析处理,得到该第二映射关系。
第二调高信息用于表示针对上述“待处理测试任务的资源配置”实际调控的任务参数与二元组(测试任务重复执行次数低位拐点,被测服务资源需求低位拐点对应的QPS最大值)之间的相对关系;而且本申请实施例不限定该第二调高信息的表示方式,例如,其可以采用比例进行表示,也可以采用数值增加量进行表示。
S326:利用第二调高信息、测试任务重复执行次数低位拐点、以及被测服务资源需求低位拐点对应的QPS最大值,确定资源配置的任务参数。
作为示例,当第二调高信息包括执行次数调高信息和QPS调高信息时,S326具体可以包括S3261-S3263:
S3261:根据执行次数调高信息和测试任务重复执行次数低位拐点,确定待参考任务循环次数。
其中,执行次数调高信息用于表示针对上述“待处理测试任务的资源配置”实际调控的其最大可接受的任务重复执行次数与上文“测试任务重复执行次数低位拐点”之间的相对关系;而且本申请实施例不限定该执行次数调高信息,例如,其可以是比例值,也可以是次数增加量。
待参考任务循环次数用于表示针对上述“待处理测试任务的资源配置”实际调控的其最大可接受的任务重复执行次数。
另外,上述“待参考任务循环次数”的确定过程类似于上文步骤125所示的待使用资源量的确定过程。
S3262:根据QPS调高信息和被测服务资源需求低位拐点对应的QPS最大值,确定待参考QPS值。
其中,QPS调高信息用于表示针对上述“待处理测试任务的资源配置”实际调控的其最大可接受的QPS与上文“被测服务资源需求低位拐点对应的QPS最大值”之间的相对关系;而且本申请实施例不限定该QPS调高信息,例如,其可以是比例值,也可以是次数增加量。
待参考QPS值用于表示针对上述“待处理测试任务的资源配置”实际调控的其最大可接受的QPS。
另外,上述“待参考QPS值”的确定过程类似于上文步骤125所示的待使用资源量的确定过程。
S3263:按照待参考任务循环次数、以及待参考QPS值,对待处理测试任务的资源配置进行任务参数调控处理,得到该资源配置的任务参数。
本申请实施例中,在获取到待参考任务循环次数、以及待参考QPS值之后,可以按照两者,对上述“待处理测试任务的资源配置”下最大可接受的任务重复执行次数及其QPS进行调控,得到该资源配置的任务参数,以使该任务参数中所记录的最大可接受的QPS为上述“待参考QPS值”,且使得该任务参数中所记录的最大可接受的任务重复执行次数为上述“待参考任务循环次数”,如此能够实现在保证待处理测试任务有效执行的前提下尽可能地提高该待处理测试任务的自动执行效果。
基于上述S3261至S3263的相关内容可知,在获取到第二调高信息之后,可以综合第二调高信息、测试任务重复执行次数低位拐点、以及被测服务资源需求低位拐点对应的QPS最大值,确定资源配置的任务参数,以使该任务参数满足该第二调高信息所表达的调高要求。
基于上述S32的相关内容可知,在获取到测试任务重复执行次数低位拐点、以及被测服务资源需求低位拐点对应的QPS最大值之后,可以参考这两处信息,确定上述“待处理测试任务的资源配置”的任务参数,以使该任务参数能够尽可能地适应于该“待处理测试任务的资源配置”,如此有利于保证待处理测试任务更好地执行。
基于上述S3的相关内容可知,在获取到测试调度参考信息之后,可以参考该测试调度参考信息、以及资源池的当前状态,对待处理测试任务进行资源配置处理以及任务参数调控处理,得到该待处理测试任务的资源配置、以及该资源配置的任务参数。
S4:按照待处理测试任务的资源配置、以及该资源配置的任务参数,执行该待处理测试任务。
本申请实施例中,在获取到待处理测试任务的资源配置、以及该资源配置的任务参数之后,可以先按照该资源配置部署该待处理测试任务的测试环境;再在该测试环境中,按照该资源配置的任务参数执行待处理测试任务,如此能够实现自动执行待处理测试任务的目的。
基于上述S1至S4的相关内容可知,对于本申请实施例提供的测试方法来说,在接收到用户针对待处理测试任务触发的自动测试请求之后,先利用该自动测试请求所携带的该待处理测试任务的测试对象的信息索引标识,从预先构建的分析信息索引数据库中查询到该信息索引标识对应的测试调度参考信息,以使该测试调度参考信息能够表示出在针对该待处理测试任务进行资源调度时所需达到的最低条件;再根据该测试调度参考信息、以及资源池的当前状态,确定该待处理测试任务的资源配置以及该资源配置的任务参数;最后,按照该资源配置以及该资源配置的任务参数,执行待处理测试任务,如此能够实现自动执行待处理测试任务的目的,从而能够有效地避免人为驱动测试任务所造成的不良影响(例如,需要消耗大量资源),进而能够有效地减少测试过程的资源消耗。
另外,因测试调度参考信息用于表示出在针对待处理测试任务进行资源调度时所需达到的最低条件(尤其是,所需使用的最低资源量),使得基于该测试调度参考信息所确定的资源配置及其任务参数至少能够达到该最低条件,从而使得该资源配置及其任务参数能够保证该待处理测试任务顺利执行,如此能够有效地避免因针对待处理测试任务所调度的资源不充足而导致该待处理测试任务无法执行或者执行失败的缺陷,从而能够提高针对待处理测试任务的自动执行效果。
此外,因待处理测试任务的资源配置以及该资源配置的任务参数是基于资源池的当前状态进行的,使得该“待处理测试任务的资源配置以及该资源配置的任务参数”更符合该资源池的当前状态,如此能够实现在资源丰富时向该待处理测试任务调度较多资源,并在资源匮乏时向该待处理测试任务调度较少资源的目的,从而有利于提高资源池的使用效果(例如,使用率等)。
方法实施例二
为了更好地实现自动执行测试任务,本申请实施例还提供了一种分析信息索引数据库,而且该分析信息索引数据库中记录了大量的原始信息(例如,已完成测试任务的执行描述数据)、以及针对这些原始信息进行分析所得的分析结果(例如,上述“大量候选标识对应的测试调度候选信息”、上述“第一映射关系”、上述“第二映射关系”、上述“预设密度”等),以使在针对某一测试任务进行自动执行处理时,能够从该分析信息索引数据库中获取到相应信息。
另外,上述“分析信息索引数据库”中所记录的所有分析结果均是通过针对大量与已完成测试任务相关的原始信息进行数据分析(例如,大数据挖掘分析、基于机器学习模型的人工智能分析等)得到的。
此外,本申请实施例不限定上述“分析信息索引数据库”的构建方式,例如,可以采用离线方式进行构建。
方法实施例三
另外,为了进一步提高自动测试效果,可以针对上述“分析信息索引数据库”进行实时地更新。基于此,本申请实施例还提供了测试方法的另一种可能的实施方式,在该实施方式中,该测试方法除了包括上述S1-S4以外,可以还包括S5:
S5:在确定执行完成待处理测试任务之后,利用该待处理测试任务的执行描述数据,更新分析信息索引数据库。
本申请实施例中,在确定已完成针对待处理测试任务的自动执行过程之后,可以利用该待处理测试任务的执行描述数据(例如,是否完成测试任务、资源配置是什么、针对该资源配置下所调控的QPS、执行时间段、执行时长、任务重复执行次数等信息),更新分析信息索引数据库,以使该分析信息索引数据库所记录的原始信息以及分析结果完成一次更新,尤其使得该分析信息索引数据库中所有与该待处理测试任务相关的原始信息以及分析结果(例如,上述“信息索引标识对应的测试调度参考信息”、上述“第一映射关系”、上述“第二映射关系”、上述“预设密度”等)完成一次更新。
基于上述S5的相关内容可知,在确定已完成针对待处理测试任务的自动执行过程之后,可以利用该待处理测试任务的执行描述数据,更新分析信息索引数据库,以使该分析信息索引数据库能够记录有该待处理测试任务所贡献的测试任务分析信息,如此能够尽可能地提高该分析信息索引数据库的实时性。
实际上,针对每一个被测服务的相关信息(例如,测试任务重复执行次数低位拐点、被测服务资源需求低位拐点、以及所述被测服务资源需求低位拐点对应的每秒查询率QPS最大值等)进行分析时,通常需要预先完成大量针对该被测服务的测试任务。
然而,在一些情况下,可能会出现以下现象:只完成了少量的针对某一被测服务的测试任务,使得分析信息索引数据库中只存在该被测服务下的少量样本数据(例如,少量测试任务的执行描述数据等),故为了提高针对该被测服务的分析效果,本申请实施例还提供了又一种可能的实施方式,在该实施方式中,该测试方法除了包括上述S1-S5以外,还包括S6:
S6:在确定分析信息索引数据库中上述“待处理测试任务的测试对象”对应的执行描述数据的个数低于第二阈值,而且确定资源池满足预设低压力条件时,继续执行S1及其后续步骤。
其中,上述“待处理测试任务的测试对象”对应的执行描述数据是指与该“待处理测试任务的测试对象”相关的执行描述数据(也就是,通过针对该测试对象进行服务测试得到的执行描述数据)。
预设低压力条件可以预先设定,例如,当资源紧张程度表征数据越大,则表示在预估任务密度下资源池的当前空闲资源满足测试任务资源调度需求的可能性越小,从而表示资源越紧张时,该预设低压力条件可以为:资源紧张程度表征数据低于第三阈值。
基于上述S6的相关内容可知,如果确定分析信息索引数据库中上述“待处理测试任务的测试对象”对应的执行描述数据的个数低于第二阈值,则可以确定针对该测试对象的服务测试过程比较少,故为了提高针对该测试对象的分析效果,可以在资源池压力比较小的情况下,自动地执行S1-S5,直至在确定该分析信息索引数据库中该测试对象对应的执行描述数据的个数不低于第二阈值时,结束针对S1-S5的循环执行过程,并针对该测试对象对应的执行描述数据进行分析,得到该测试对象的分析结果(例如,测试调度参考信息),如此能够在不影响资源池正常工作的前提下尽可能地提高该分析结果的准确性。
方法实施例四
为了更好地理解本申请实施例提供的测试方法,下面结合图2所示的***进行说明。其中,图2为本申请实施例提供的一种测试***的工程架构示意图。
对于如图2所示的测试***来说,该测试***适用于执行本申请实施例提供的测试方法的任意一种可能的实施方式,以使该测试***能够实现自动执行某一测试任务。
如图2所示,本申请实施例提供的测试***可以分为在线***和离线***,为了便于理解,下面分别介绍在线***和离线***。
在线***
对于图2所示的在线***来说,该在线***是指当有任务请求(例如,上文“自动测试请求”)时作用的***,而且该在线***可以分为以下7个模块:
在线任务管理模块:是自动化测试的入口,负责管理用户任务和预处理。
任务引擎服务:管理任务执行流程,发起子模块请求、结果反馈、节点串联等。
数据采集模块:负责从任务引擎服务采集任务数据,包括执行结果、执行耗时等。
资源调度模块:负责根据实时资源池状态和资源优化服务产生最优分配策略,为测试任务分配资源。
资源优化模块:负责根据离线分析产出的索引数据,进行在线预估,包括资源拐点值、预估可用资源状态以及任务密度等。
容器调度模块:根据已分配的资源创建测试环境。
测试执行模块:负责对已经创建好的测试环境,发送测试流量、统计测试结果。
另外,为了进一步理解图2所示的在线***,下面结合针对待处理测试任务的自动执行过程为例介绍在线***的工作原理。
作为示例,在线***的工作原理如下:当在线任务管理模块接收到用户针对待处理测试任务触发的自动测试请求之后,由任务引擎服务模块向资源调度模块发起请求,以使该资源调度模块能够参考由资源池管理模块所获取的资源池实时状态、以及由资源优化模块所获取的测试调度参考信息这两个信息进行资源分配,得到该待处理测试任务的资源配置,并对该资源配置下最大可接受的QPS以及任务重复执行次数进行调控,得到该资源配置的任务参数;随后,由任务引擎服务模块根据该资源配置部署测试环境,并向测试执行模块发起请求,以使该测试执行模块能够根据资源配置的任务参数,执行待处理测试任务,以便在任务引擎服务模块确定该待处理测试任务执行结束之后,由该任务引擎服务模块向数据采集模块发起请求,以使该数据采集模块能够从引擎服务模块中采集任务样本数据(例如,该待处理测试任务的执行描述数据)。
基于上述在线***的相关内容可知,在测试任务高峰期,资源状态相对紧张,可能出现大量测试任务因资源不足导致长时间排队甚至部署失败,故资源调度模块应当保证尽可能多的测试任务被正确执行,因此,可以在被测服务资源安全门槛内,资源调度模块可以降低资源配置及对应的QPS,以保证提供尽可能多的环境数量,从而保证任务并发量。然而,在测试任务低峰期,资源池会有大量空闲资源,使得资源调度模块可以尽可能将空闲资源利用起来,故该资源调度模块可以提升被测服务资源配置以及对应的QPS,以优化测试任务耗时,优化用户体验。如此能够实现依据当前可用资源量,智能为被测试服务挑选资源策略的功能。
离线***
对于图2所示的离线***来说,该离线***是指不依赖于任务请求、可以进行独立分析产出的模块,而且该离线***可以分为以下3个模块:
离线任务调度模块:是离线***测试的入口,负责根据数据采集样本范围进行新的任务样本补充。
离线数据分析模块:负责根据数据采集样本,进行数据分析,包括样本分类、数据拟合等。
离线索引存储模块:用于存储离线数据的分析索引。
另外,离线***的工作原理如下:离线任务调度模块可以针对数据采集模块所存储的大量数据进行样本覆盖范围统计分析,以便当确定某一种样本个数(例如,用于测试XXX软件的测试任务个数)比较少时,可以在任务测试低峰期,由该离线任务调度模块发起样本补充执行流程(例如,自动地发起针对用于测试XXX软件的测试任务的执行过程),以保证不同种类样本的均衡性;离线数据分析模块负责对采集后的样本进行信息分析处理(例如,分类统计、数据分析、特性拟合等),得到分析结果,并将分析结果放在存储模块,以供下次在线请求使用。
基于上述离线***的相关内容可知,该离线***中离线数据分析模块能够基于一些已有的与测试任务相关的数据分析得到被测试服务的最低资源配置以及最佳资源配置(或者,分析得到被测服务在不同资源紧张程度下所使用的资源配置等)、以及在不同资源配置下最大可以承受的QPS,以便后续能够使用这些分析结果进行针对该被测服务的自动测试过程。
基于上述测试***的相关内容可知,该测试***可以智能地为每个测试任务选择恰当适宜的资源配置及其任务参数。例如,在测试任务量较大时,该测试***可以自动为被测试服务挑选最低资源的配置,降低每一个测试的资源占用量,从而让***可以支持更多的测试任务。另外,在测试任务量较小时,该测试***可以自动为被测是服务挑选最佳性能资源配置,同时提高测试请求的qps,缩短测试时间。
基于上述方法实施例提供的测试方法,本申请实施例还提供了一种测试装置,下面结合附图进行解释和说明。
装置实施例
装置实施例提供的测试装置的技术详情,请参照上述方法实施例。
参见图3,该图为本申请实施例提供的一种测试装置的结构示意图。
本申请实施例提供的测试装置300,包括:
接收单元301,用于接收用户针对待处理测试任务触发的自动测试请求;其中,所述自动测试请求携带有所述待处理测试任务的测试对象的信息索引标识;
查询单元302,用于从预先构建的分析信息索引数据库中查询所述信息索引标识对应的测试调度参考信息;其中,所述测试调度参考信息用于表示在针对所述待处理测试任务进行资源调度时所需达到的最低条件;
确定单元303,用于根据资源池的当前状态、以及所述测试调度参考信息,确定所述待处理测试任务的资源配置以及所述资源配置的任务参数;
测试单元304,用于按照所述资源配置以及所述资源配置的任务参数,执行所述待处理测试任务。
在一种可能的实施方式中,所述测试调度参考信息包括测试任务重复执行次数低位拐点、被测服务资源需求低位拐点、以及所述被测服务资源需求低位拐点对应的每秒查询率QPS最大值中的至少一个。
在一种可能的实施方式中,所述测试调度参考信息包括测试任务重复执行次数低位拐点、被测服务资源需求低位拐点、以及所述被测服务资源需求低位拐点对应的QPS最大值;
所述确定单元303,包括:
分配子单元,用于依据所述资源池的当前状态、以及所述被测服务资源需求低位拐点,对所述待处理测试任务进行资源分配处理,得到所述待处理测试任务的资源配置;
调控子单元,用于依据所述测试任务重复执行次数低位拐点、以及所述被测服务资源需求低位拐点对应的QPS最大值,确定所述资源配置的任务参数。
在一种可能的实施方式中,所述分配子单元,包括:
第一确定子单元,用于根据所述资源池的当前状态,确定所述资源池的当前空闲资源;
第二确定子单元,用于根据所述当前空闲资源、以及所述被测服务资源需求低位拐点,对所述待处理测试任务进行资源分配处理,得到所述待处理测试任务的资源配置。
在一种可能的实施方式中,所述测试装置300还包括:
获取单元,用于获取预估任务密度;其中,所述预估任务密度用于表示预测在所述待处理测试任务的执行期间同时执行的测试任务数量;
所述第二确定子单元,具体用于:根据所述预估任务密度、所述当前空闲资源、以及所述被测服务资源需求低位拐点,对所述待处理测试任务进行资源分配处理,得到所述待处理测试任务的资源配置。
在一种可能的实施方式中,所述所述第二确定子单元,具体用于:根据所述预估任务密度和所述当前空闲资源的资源量,确定资源紧张程度表征数据;若所述资源紧张程度表征数据满足预设资源紧张条件,则按照所述被测服务资源需求低位拐点,从所述当前空闲资源中对所述待处理测试任务进行资源分配处理,得到所述待处理测试任务的资源配置。
在一种可能的实施方式中,所述所述第二确定子单元,还用于:若所述资源紧张程度表征数据不满足预设资源紧张条件,则从预先构建的第一映射关系中查询所述资源紧张程度表征数据在所述被测服务资源需求低位拐点下所对应的第一调高信息;利用所述第一调高信息、以及所述被测服务资源需求低位拐点,确定待使用资源量;按照所述待使用资源量,从所述当前空闲资源中对所述待处理测试任务进行资源分配处理,得到所述待处理测试任务的资源配置。
在一种可能的实施方式中,所述预估任务密度是利用在历史时间段内所执行的测试任务的执行描述数据进行预测得到的。
在一种可能的实施方式中,所述调控子单元,具体用于:若所述待处理测试任务的资源配置满足预设最低配置条件,则将所述测试任务重复执行次数低位拐点、以及所述被测服务资源需求低位拐点对应的QPS最大值,确定为所述资源配置的任务参数。
在一种可能的实施方式中,所述调控子单元,还用于:若所述待处理测试任务的资源配置满足预设调高条件,则将所述待处理测试任务的资源配置与所述被测服务资源需求低位拐点进行比较,得到资源富足程度表征值;从预先构建的第二映射关系中查询所述资源富足程度表征值在所述测试任务重复执行次数低位拐点、以及所述被测服务资源需求低位拐点对应的QPS最大值下所对应的第二调高信息;利用所述第二调高信息、所述测试任务重复执行次数低位拐点、以及所述被测服务资源需求低位拐点对应的QPS最大值,确定所述资源配置的任务参数。
在一种可能的实施方式中,所述测试装置300还包括:
更新单元,用于在确定执行完成所述待处理测试任务之后,利用所述待处理测试任务的执行描述数据,更新所述分析信息索引数据库。
基于上述测试装置300的相关内容可知,对于本申请实施例提供的测试装置300来说,在接收到用户针对待处理测试任务触发的自动测试请求之后,先利用该自动测试请求所携带的该待处理测试任务的测试对象的信息索引标识,从预先构建的分析信息索引数据库中查询到该信息索引标识对应的测试调度参考信息,以使该测试调度参考信息能够表示出在针对该待处理测试任务进行资源调度时所需达到的最低条件;再根据该测试调度参考信息、以及资源池的当前状态,确定该待处理测试任务的资源配置以及该资源配置的任务参数;最后,按照该资源配置以及该资源配置的任务参数,执行待处理测试任务,如此能够实现自动执行待处理测试任务的目的,从而能够有效地避免人为驱动测试任务所造成的不良影响(例如,需要消耗大量资源),进而能够有效地减少测试过程的资源消耗。
另外,因测试调度参考信息用于表示出在针对待处理测试任务进行资源调度时所需达到的最低条件(尤其是,所需使用的最低资源量),使得基于该测试调度参考信息所确定的资源配置及其任务参数至少能够达到该最低条件,从而使得该资源配置及其任务参数能够保证该待处理测试任务顺利执行,如此能够有效地避免因针对待处理测试任务所调度的资源不充足而导致该待处理测试任务无法执行或者执行失败的缺陷,从而能够提高针对待处理测试任务的自动执行效果。
此外,因待处理测试任务的资源配置以及该资源配置的任务参数是基于资源池的当前状态进行的,使得该“待处理测试任务的资源配置以及该资源配置的任务参数”更符合该资源池的当前状态,如此能够实现在资源丰富时向该待处理测试任务调度较多资源,并在资源匮乏时向该待处理测试任务调度较少资源的目的,从而有利于提高资源池的使用效果(例如,使用率等)。
进一步地,本申请实施例还提供了一种设备,所述设备包括处理器以及存储器:
所述存储器用于存储计算机程序;
所述处理器用于根据所述计算机程序执行本申请实施例提供的测试方法的任一实施方式。
进一步地,本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质用于存储计算机程序,所述计算机程序用于执行本申请实施例提供的测试方法的任一实施方式。
进一步地,本申请实施例还提供了一种计算机程序产品,所述计算机程序产品在终端设备上运行时,使得所述终端设备执行本申请实施例提供的测试方法的任一实施方式。
应当理解,在本申请中,“至少一个(项)”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,用于描述关联对象的关联关系,表示可以存在三种关系,例如,“A和/或B”可以表示:只存在A,只存在B以及同时存在A和B三种情况,其中A,B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项(个)”或其类似表达,是指这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b或c中的至少一项(个),可以表示:a,b,c,“a和b”,“a和c”,“b和c”,或“a和b和c”,其中a,b,c可以是单个,也可以是多个。
以上所述,仅是本发明的较佳实施例而已,并非对本发明作任何形式上的限制。虽然本发明已以较佳实施例揭露如上,然而并非用以限定本发明。任何熟悉本领域的技术人员,在不脱离本发明技术方案范围情况下,都可利用上述揭示的方法和技术内容对本发明技术方案做出许多可能的变动和修饰,或修改为等同变化的等效实施例。因此,凡是未脱离本发明技术方案的内容,依据本发明的技术实质对以上实施例所做的任何简单修改、等同变化及修饰,均仍属于本发明技术方案保护的范围内。
Claims (15)
1.一种测试方法,其特征在于,所述方法包括:
接收用户针对待处理测试任务触发的自动测试请求;其中,所述自动测试请求携带有所述待处理测试任务的测试对象的信息索引标识;
从预先构建的分析信息索引数据库中查询所述信息索引标识对应的测试调度参考信息;其中,所述测试调度参考信息用于表示在针对所述待处理测试任务进行资源调度时所需达到的最低条件;
根据资源池的当前状态、以及所述测试调度参考信息,确定所述待处理测试任务的资源配置以及所述资源配置的任务参数;
按照所述资源配置以及所述资源配置的任务参数,执行所述待处理测试任务。
2.根据权利要求1所述的方法,其特征在于,所述测试调度参考信息包括测试任务重复执行次数低位拐点、被测服务资源需求低位拐点、以及所述被测服务资源需求低位拐点对应的每秒查询率QPS最大值中的至少一个。
3.根据权利要求2所述的方法,其特征在于,所述测试调度参考信息包括测试任务重复执行次数低位拐点、被测服务资源需求低位拐点、以及所述被测服务资源需求低位拐点对应的QPS最大值;
所述根据资源池的当前状态、以及所述测试调度参考信息,确定所述待处理测试任务的资源配置以及所述资源配置的任务参数,包括:
依据所述资源池的当前状态、以及所述被测服务资源需求低位拐点,对所述待处理测试任务进行资源分配处理,得到所述待处理测试任务的资源配置;
依据所述测试任务重复执行次数低位拐点、以及所述被测服务资源需求低位拐点对应的QPS最大值,确定所述资源配置的任务参数。
4.根据权利要求3所述的方法,其特征在于,所述依据所述资源池的当前状态、以及所述被测服务资源需求低位拐点,对所述待处理测试任务进行资源分配处理,得到所述待处理测试任务的资源配置,包括:
根据所述资源池的当前状态,确定所述资源池的当前空闲资源;
根据所述当前空闲资源、以及所述被测服务资源需求低位拐点,对所述待处理测试任务进行资源分配处理,得到所述待处理测试任务的资源配置。
5.根据权利要求4所述的方法,其特征在于,所述方法还包括:
获取预估任务密度;其中,所述预估任务密度用于表示预测在所述待处理测试任务的执行期间同时执行的测试任务数量;
所述根据所述当前空闲资源、以及所述被测服务资源需求低位拐点,对所述待处理测试任务进行资源分配处理,得到所述待处理测试任务的资源配置,包括:
根据所述预估任务密度、所述当前空闲资源、以及所述被测服务资源需求低位拐点,对所述待处理测试任务进行资源分配处理,得到所述待处理测试任务的资源配置。
6.根据权利要求5所述的方法,其特征在于,所述根据所述预估任务密度、所述当前空闲资源、以及所述被测服务资源需求低位拐点,对所述待处理测试任务进行资源分配处理,得到所述待处理测试任务的资源配置,包括:
根据所述预估任务密度和所述当前空闲资源的资源量,确定资源紧张程度表征数据;
若所述资源紧张程度表征数据满足预设资源紧张条件,则按照所述被测服务资源需求低位拐点,从所述当前空闲资源中对所述待处理测试任务进行资源分配处理,得到所述待处理测试任务的资源配置。
7.根据权利要求6所述的方法,其特征在于,所述方法还包括:
若所述资源紧张程度表征数据不满足预设资源紧张条件,则从预先构建的第一映射关系中查询所述资源紧张程度表征数据在所述被测服务资源需求低位拐点下所对应的第一调高信息;
利用所述第一调高信息、以及所述被测服务资源需求低位拐点,确定待使用资源量;
按照所述待使用资源量,从所述当前空闲资源中对所述待处理测试任务进行资源分配处理,得到所述待处理测试任务的资源配置。
8.根据权利要求5所述的方法,其特征在于,所述预估任务密度是利用在历史时间段内所执行的测试任务的执行描述数据进行预测得到的。
9.根据权利要求3所述的方法,其特征在于,所述依据所述测试任务重复执行次数低位拐点、以及所述被测服务资源需求低位拐点对应的QPS最大值,确定所述资源配置的任务参数,包括:
若所述待处理测试任务的资源配置满足预设最低配置条件,则将所述测试任务重复执行次数低位拐点、以及所述被测服务资源需求低位拐点对应的QPS最大值,确定为所述资源配置的任务参数。
10.根据权利要求9所述的方法,其特征在于,所述方法还包括:
若所述待处理测试任务的资源配置满足预设调高条件,则将所述待处理测试任务的资源配置与所述被测服务资源需求低位拐点进行比较,得到资源富足程度表征值;
从预先构建的第二映射关系中查询所述资源富足程度表征值在所述测试任务重复执行次数低位拐点、以及所述被测服务资源需求低位拐点对应的QPS最大值下所对应的第二调高信息;
利用所述第二调高信息、所述测试任务重复执行次数低位拐点、以及所述被测服务资源需求低位拐点对应的QPS最大值,确定所述资源配置的任务参数。
11.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在确定执行完成所述待处理测试任务之后,利用所述待处理测试任务的执行描述数据,更新所述分析信息索引数据库。
12.一种测试装置,其特征在于,包括:
接收单元,用于接收用户针对待处理测试任务触发的自动测试请求;其中,所述自动测试请求携带有所述待处理测试任务的测试对象的信息索引标识;
查询单元,用于从预先构建的分析信息索引数据库中查询所述信息索引标识对应的测试调度参考信息;其中,所述测试调度参考信息用于表示在针对所述待处理测试任务进行资源调度时所需达到的最低条件;
确定单元,用于根据资源池的当前状态、以及所述测试调度参考信息,确定所述待处理测试任务的资源配置以及所述资源配置的任务参数;
测试单元,用于按照所述资源配置以及所述资源配置的任务参数,执行所述待处理测试任务。
13.一种设备,其特征在于,所述设备包括处理器以及存储器:
所述存储器用于存储计算机程序;
所述处理器用于根据所述计算机程序执行权利要求1-11中任一项所述的方法。
14.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质用于存储计算机程序,所述计算机程序用于执行权利要求1-11中任一项所述的方法。
15.一种计算机程序产品,其特征在于,所述计算机程序产品在终端设备上运行时,使得所述终端设备执行权利要求1-11中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210278161.1A CN114625654A (zh) | 2022-03-21 | 2022-03-21 | 一种测试方法及其相关设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210278161.1A CN114625654A (zh) | 2022-03-21 | 2022-03-21 | 一种测试方法及其相关设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114625654A true CN114625654A (zh) | 2022-06-14 |
Family
ID=81904235
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210278161.1A Pending CN114625654A (zh) | 2022-03-21 | 2022-03-21 | 一种测试方法及其相关设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114625654A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114625511A (zh) * | 2022-03-21 | 2022-06-14 | 北京有竹居网络技术有限公司 | 一种测试任务调度方法及其相关设备 |
CN116360990A (zh) * | 2023-03-27 | 2023-06-30 | 合芯科技有限公司 | 分布式计算任务合理性预判方法、***、设备和存储介质 |
-
2022
- 2022-03-21 CN CN202210278161.1A patent/CN114625654A/zh active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114625511A (zh) * | 2022-03-21 | 2022-06-14 | 北京有竹居网络技术有限公司 | 一种测试任务调度方法及其相关设备 |
CN116360990A (zh) * | 2023-03-27 | 2023-06-30 | 合芯科技有限公司 | 分布式计算任务合理性预判方法、***、设备和存储介质 |
CN116360990B (zh) * | 2023-03-27 | 2024-01-09 | 合芯科技有限公司 | 分布式计算任务合理性预判方法、***、设备和存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110096349B (zh) | 一种基于集群节点负载状态预测的作业调度方法 | |
CN111427681B (zh) | 边缘计算中基于资源监控的实时任务匹配调度***和方法 | |
CN114625654A (zh) | 一种测试方法及其相关设备 | |
CN104317658B (zh) | 一种基于MapReduce的负载自适应任务调度方法 | |
CN112199150A (zh) | 一种基于微服务调用依赖感知的在线应用动态扩缩容方法 | |
CN111026553B (zh) | 离线混部作业的资源调度方法及服务器*** | |
CN110727506B (zh) | 一种基于成本模型的spark参数自动调优方法 | |
CN111858065A (zh) | 数据处理方法、设备、存储介质及装置 | |
CN115543624A (zh) | 异构算力编排调度方法、***、设备及存储介质 | |
CN116467076A (zh) | 一种基于集群可用资源的多集群调度方法及*** | |
CN112905343A (zh) | 一种工业云环境下基于负载特性的资源调度*** | |
CN113568759B (zh) | 一种基于云计算的大数据处理方法及其*** | |
CN111752710A (zh) | 数据中心pue动态优化方法、***、设备及可读存储介质 | |
CN103442087B (zh) | 一种基于响应时间趋势分析的Web服务***访问量控制装置和方法 | |
CN116627356B (zh) | 一种大容量存储数据的分布控制方法及*** | |
CN116820729A (zh) | 离线任务调度方法、装置及电子设备 | |
CN111949493A (zh) | 一种基于推理应用的边缘ai服务器功耗测试方法及装置 | |
CN116896591A (zh) | 网络数据分析模型调度方法、装置和计算机设备 | |
CN111782394A (zh) | 一种基于响应时间感知的集群服务资源动态调整方法 | |
CN116599858A (zh) | 一种响应时间保障型集群***及其规模调整方法 | |
CN116974994A (zh) | 一种基于集群的高效能文件协作*** | |
CN111782466A (zh) | 一种大数据任务资源利用检测方法及装置 | |
CN116501468A (zh) | 批量作业处理方法、装置及电子设备 | |
CN115907391A (zh) | 一种电能表检定任务的调度方法及*** | |
CN109656796B (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 |