CN112559347A - 测试分配方法及装置、设备、可读介质和计算机程序产品 - Google Patents
测试分配方法及装置、设备、可读介质和计算机程序产品 Download PDFInfo
- Publication number
- CN112559347A CN112559347A CN202011479147.5A CN202011479147A CN112559347A CN 112559347 A CN112559347 A CN 112559347A CN 202011479147 A CN202011479147 A CN 202011479147A CN 112559347 A CN112559347 A CN 112559347A
- Authority
- CN
- China
- Prior art keywords
- module
- test
- weight
- candidate
- identifier
- 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.)
- Granted
Links
- 238000012360 testing method Methods 0.000 title claims abstract description 450
- 238000000034 method Methods 0.000 title claims abstract description 76
- 238000004590 computer program Methods 0.000 title claims abstract description 21
- 230000006870 function Effects 0.000 claims description 104
- 238000012827 research and development Methods 0.000 claims description 32
- 238000004364 calculation method Methods 0.000 claims description 20
- 230000008569 process Effects 0.000 claims description 17
- 238000011161 development Methods 0.000 claims description 13
- 238000012163 sequencing technique Methods 0.000 claims description 7
- 239000000126 substance Substances 0.000 claims 1
- 238000013522 software testing Methods 0.000 abstract description 2
- 238000012545 processing Methods 0.000 description 11
- 238000004891 communication Methods 0.000 description 10
- 230000001174 ascending effect Effects 0.000 description 9
- 238000010586 diagram Methods 0.000 description 7
- 238000007726 management method Methods 0.000 description 5
- 230000007246 mechanism Effects 0.000 description 5
- 238000012986 modification Methods 0.000 description 5
- 230000004048 modification Effects 0.000 description 5
- 238000013500 data storage Methods 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 3
- 230000003993 interaction Effects 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000000903 blocking effect Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000002996 emotional effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 230000002349 favourable effect Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 238000001303 quality assessment method Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000001953 sensory effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000010998 test method Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
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
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)
- Stored Programmes (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本申请提供了一种测试分配方法及装置、设备、可读介质和计算机程序产品,涉及计算机和软件测试技术领域,可用于云计算和云领域。具体实现方案为:从预设的测试方向信息中,获取与待测模块的模块名对应的测试终端标识作为候选标识,每个测试终端标识用于标识一个测试终端的归属信息;根据本次测试所涉及业务确定分配策略,并根据分配策略,计算每个候选标识的策略权重;基于策略权重,从候选标识中确定分配的待测模块的模块名对应的目标标识。根据本申请实施例的方案,可以提高测试分配效率。
Description
技术领域
本申请涉及计算机和软件测试技术领域,尤其涉及一种测试分配方法及装置、设备、可读介质和计算机程序产品。
背景技术
软件产品开发完成后,为保障软件产品能够完成和实现预期需求的功能,需要对软件进行测试。在软件研发测试流程中,软件项目从研发流程转移到测试流程,以进行测试分配。
在整个团队中,通常多个软件项目并行,当研发项目开发完成并被提交测试时,一般由团队负责人通过人工进行测试分配,人工分配消耗人力,测试分配效率低下。
发明内容
提供了一种测试分配方法及装置、设备、可读介质和计算机程序产品。
根据第一方面,提供了一种测试分配方法,包括:从预设的测试方向信息中,获取与待测模块的模块名对应的测试终端标识作为候选标识,每个测试终端标识用于标识一个测试终端的归属信息;根据本次测试所涉及业务确定分配策略,并根据分配策略,计算每个候选标识的策略权重;基于策略权重,从候选标识中确定分配的待测模块的模块名对应的目标标识。
根据第二方面,提供了一种测试分配装置,包括:候选标识获取模块,用于从预设的测试方向信息中,获取与待测模块的模块名对应的测试终端标识作为候选标识,每个测试终端标识用于标识一个测试终端的归属信息;权重计算模块,用于根据本次测试所涉及业务确定分配策略,并根据分配策略,计算每个候选标识的策略权重;目标标识确定模块,用于基于策略权重,从候选标识中确定分配的待测模块的模块名对应的目标标识。
根据第三方面,提供了一种电子设备,其包括:至少一个处理器;以及与至少一个处理器通信连接的存储器;其中,存储器存储有可被至少一个处理器执行的指令,指令被至少一个处理器执行,以使至少一个处理器能够执行上述任意一种测试分配方法。
根据第四方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,计算机指令用于使计算机执行上述任意一种测试分配方法。
根据第五方面,提供了一种计算机程序产品,包括计算机程序,计算机程序在被处理器执行时实现上述任意一种测试分配方法。
根据本申请实施例的测试分配方法,可以根据本次测试所涉及的业务,选择分配策略,并根据选择的分配策略计算每个候选标识的策略权重,并根据计算出来的权重确定为待测模块分配的测试终端的标识,从而可以根据业务特点加载不同分配策略进行测试终端标识的权重计算,解决如何进行自动化测试分配的问题,能够及时响应研发将开发的产品提交测试的需求,提高了测试任务分配处理的效率和灵活选择。
应当理解,本部分所描述的内容并非旨在标识本申请的实施例的关键或重要特征,也不用于限制本申请的范围。本申请的其它特征将通过以下的说明书而变得容易理解。
附图说明
附图用于更好地理解本方案,不构成对本申请的限定。其中:
图1是本申请实施例提供的测试分配机制的框架图;
图2是本申请一实施例提供的测试分配方法的流程图;
图3是本申请另一实施例提供的测试分配方法的流程图;
图4是是本申请实施例的提供的测试分配装置的组成框图;
图5是用来实现本申请实施例的测试分配方法的电子设备的框图。
具体实施方式
以下结合附图对本申请的示范性实施例做出说明,其中包括本申请实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本申请的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
在不冲突的情况下,本申请各实施例及实施例中的各特征可相互组合。
如本文所使用的,术语“和/或”包括一个或多个相关列举条目的任何和所有组合。
本文所使用的术语仅用于描述特定实施例,且不意欲限制本申请。如本文所使用的,单数形式“一个”和“该”也意欲包括复数形式,除非上下文另外清楚指出。还将理解的是,当本说明书中使用术语“包括”和/或“由……制成”时,指定存在特征、整体、步骤、操作、元件和/或组件,但不排除存在或添加一个或多个其它特征、整体、步骤、操作、元件、组件和/或其群组。
在本申请实施例的测试研发流程中,当前测试分配方式主要包括人工分配、随机分配或研发者指定的方式。
若通过人工进行测试任务分配,分配时需要由人工考虑项目复杂情况和对当前所有测试终端的测试跟进情况进行检查,以选择合适的测试终端,例如需要考虑测试终端所属测试执行对象对修改代码所涉及的模块或所涉及的函数的熟悉程度、测试终端当前是否有其他项目跟进等因素。
在实际应用场景中,一台测试终端可以跟进多个项目,多个项目可以由不同测试终端进行测试,测试终端的测试终端标识与研发项目的项目名可以是多对多的关系。人工进行测试任务分配需要消耗较多的人力。在进行人工分配时,首先,需要及时响应研发提测的需求以进行分配工作,否则将出现已提测但无人跟进测试的阻塞场景。其次,当团队规模较大,存在多个例如十数个测试终端时,需要对这些测试终端的当前情况进行遍历,需要消耗较多时间才能挑选出最合适的。第三,在进行历史项目跟进和考虑已有的测试终端所属测试执行对象是否对代码熟悉等因素时,只能依靠记忆、询问等方式,容易出现偏差。
若进行随机的测试分配,则需要将所有测试终端作为测试终端候选池,随机挑选。但是随机分配容易出错,若出错则需要二次分配,浪费测试和研发双方的沟通时间。
若通过研发者随机指定的方式进行测试分配,需要由研发者在提测时指定进行跟进的测试终端。由研发者指定测试终端仅存在于少数应用场景中。大部分应用场景中,研发对测试终端的所属测试执行对象的人力情况或测试终端的空闲情况等信息并不了解。此外,这样的选择容易带有较多的个人感情色彩,不利于长期的流程管理、规范在整个团队的贯彻实施。
在进行软件项目管理、测试流程管理过程中,当软件提测后具备完善的自动化测试流程,从软件提测后到测试完成发布基本完成了自动化处理,本申请实施例的测试分配方法,可以从提测到测试分配这一环节进行自动化处理。
图1是本申请实施例提供的测试分配机制的框架图;如图1所示,根据本申请实施例的测试分配系统可以包括:数据处理器10和数据存储器11。
在一个实施例中,数据处理器10可以用于执行测试分配,在执行测试分配之前,将前置采集(即测试分配之前)的信息记录到数据存储器11,以及,在根据测试分配结果进行自动化测试和完成测试之后,将后置采集(即完成测试之后)的信息记录到数据存储器11。
在图1中,数据存储器11中存储有如下一个或多个数据表,例如:测试方向表(表1)、需求跟进情况表(表2)、模块被测情况表(表3);其中,测试方向表可以用记录和存储测试方向信息,需求跟进情况表可以用于记录和存储需求跟进信息,模块被测情况表可以用于记录和存储模块被测信息。
在一些实施例中,测试方向表可以在进行测试分配前进行线下构造,作为测试分配的数据基础。测试方向表的字段结构如下:<预定模块的模块名、对应的测试终端标识、测试终端标识的基本权重>。其中,模块名可以用于标识一个模块,每个对应的测试终端标识用于标识负责跟进预定模块的一个测试终端的归属信息,归属信息即该一个测试终端所属测试执行对象(Quality Assurance,QA)的身份信息,该测试执行对象可以是一个测试人员,也可以是一个测试机构;测试终端标识的基本权重可以用于指示负责跟进一个模块的测试终端的基本权重。其中,模块名和对应的测试终端标识为测试方向表中的键值(key)。
在本申请实施例中,一个模块名可以对应多个测试终端标识,即一个模块可以由多个测试终端进行测试,一个测试终端可能负责多个模块的测试且在每个模块的权重不同。权重可以代表当前测试终端是否有效和进行测试分配时对每个测试终端的倾向性。
在一些实施例中,需求跟进情况表可以在前置信息采集和后置信息采集时,获取并保存相关字段的信息得到需求跟进信息。前置信息采集可以表示在进行测试分配之前采集相关信息,后置信息采集可以表示在测试完成之后采集相关信息。需求跟进情况表的字段结构包括如下字段中的一项或多项:<模块名,需求编号、函数名、研发者标识、提测项目名、测试终端标识、测试时长>,其中,研发者标识用于标识研发者的身份信息,研发者可以是研发者也可以是研发机构,提测项目名用于指示研发者的提交测试项目,测试终端标识用于标识一个测试终端的归属信息。
在一些实施例中,模块被测情况表可以在后置信息采集时获取并保存相关字段的信息,得到模块被测信息。模块被测情况表中的字段结构可以包括如下字段中的一项或多项:<文件名、函数名、模块名、测试终端标识、测试开始时间、测试结束时间>,其中,在一个实施例中,若测试开始时间的取值不为空且测试结束时间的取值为空,则表示当前测试正在进行。在一些实施例中,模块被测情况表中还可以包括当前时间之前预定时间范围内N个进行跟进的测试终端的测试终端标识,N为大于1的整数。
在一些实施例中,数据存储器11中还可以存储有临时数据表。临时数据表可以在前置信息采集时获取并保存相关字段的信息。字段结构包括如下字段中的一项或多项:<模块名、需求编号、测试终端标识、被修改文件的文件名、被修改函数的函数名>。通过临时数据表记录的信息,可以用于对需求跟进情况表(表2)和模块被测情况表(表3)进行信息更新。
继续参考图1,在一个实施例中,本申请实施例的软件项目分配的整体流程可以包括如下步骤。
S101,在项目开发完成后,由研发者进行自测。
S102,数据处理器10执行前置信息采集。
在该步骤中,可以按照需求跟进情况表(表2)的字段结构和临时数据表的字段结构进行前置信息采集,并将采集的信息通过数据存储器11保存到相应的表中。
S103,数据处理器10执行测试分配。
在该步骤中,可以通过访问数据存储器11,从测试方向表(表1)、需求跟进情况表(表2)和模块被测情况表(表3)中的至少一个数据表中读取数据,执行本申请实施例的测试分配,从候选标识中确定分配的待测模块的模块名对应的目标标识。
S104,根据测试分配结果,由分配的目标标识所对应的测试终端对待测模块进行自动化测试。
S105,测试终端完成自动化测试。
S106,数据处理器10通过后置信息采集,更新需求跟进情况表和模块被测情况表。
通过上述步骤S101-S06,本申请实施例实现基于权重计算的自动进行测试分配的分配机制框架,并可以应用于软件项目管理、测试流程管理等应用场景中。
为了更好地理解本申请,下面通过图2和图3,详细介绍本申请实施例的测试分配方法的具体流程。
图2是本申请一实施例提供的测试分配方法的流程图。
第一方面,参照图1,本申请实施例提供一种测试分配方法,该方法包括如下步骤。
S210,从预设的测试方向信息中,获取与待测模块的模块名对应的测试终端标识作为候选标识,每个测试终端标识用于标识一个测试终端的归属信息。
S220,根据本次测试所涉及业务确定分配策略,并根据分配策略,计算每个候选标识的策略权重。
S230,基于策略权重,从候选标识中确定分配的待测模块的模块名对应的目标标识。
在一个实施例中,可以预先设置不同业务与分配策略之间的对应关系,以根据该对应关系,确定本次测试所涉及业务的分配策略。对于不同业务,业务过程中需要测试的功能点所涉及的模块、函数和研发者不同,所涉及测试终端的空闲状态、模块匹配程度、函数匹配程度以及研发项目匹配程度也会有所不同。因此,本申请实施例中,在进行测试分配时,可以根据不同业务选择不同的分配策略。
根据本申请实施例的测试分配方法,可以根据本次测试所涉及业务选择分配策略,并根据选择的分配策略,计算每个候选标识对应的策略权重,根据计算的策略权重,确定待测模块的模块名对应的目标标识,从而可以根据业务特点加载不同的分配策略进行测试分配,对分配的测试终端进行灵活选择,实现对测试分配的自动化处理。
在一个实施例中,不同业务涉及不同的模块名、函数名、研发者标识和负责跟进的测试终端的测试终端标识;对应的,分配策略可以包括:模块匹配策略、函数匹配策略、空闲匹配策略和研发项目匹配策略中的至少一种;步骤S220中,根据本次测试所涉及业务确定分配策略,并根据分配策略,计算每个候选标识的策略权重的步骤,具体可以包括如下步骤。
S11,根据本次测试所涉及业务,从模块匹配策略、函数匹配策略、空闲匹配策略和研发项目匹配策略中,选择至少一个策略。
S12,确定每个候选标识的每个所选策略的权重。
S13,计算同一候选标识的每个所选策略的权重之和,得到每个候选标识的策略权重。
在该实施例中,可以根据业务特点,从模块匹配策略、函数匹配策略、空闲匹配策略和研发项目匹配策略中,加载不同的策略进行计算和灵活选择,从而可以兼顾测试终端的归属者的自身业务情况、休假情况、人力调整等不同应用场景下的状态,具有充分地业务自定义调整空间,测试分配方式更加灵活高效。
在一个实施例中,在所选策略为模块匹配策略的情况下,所选策略的权重为模块匹配权重;上述步骤S12中,确定每个候选标识的每个所选策略的权重的步骤,具体可以包括如下步骤。
S21,从预设的模块被测信息中,获取待测模块的模块名对应的测试终端标识和对应的测试结束时间。
S22,统计测试结束时间在当前时间之前的第一预定时间范围内,每个候选标识对应的测试终端对待测模块的测试次数。
S23,按照统计的对待测模块的测试次数,对每个候选标识进行排序,得到每个候选标识的模块匹配排名。
S24,基于预设第一权重基线值和预设第一权重步长,按照模块匹配排名计算每个候选标识的权重值,得到每个候选标识的模块匹配权重。
在本申请实施例中,步骤S23中对每个候选标识的排序可以是升序排序,也可以是降序排序。在升序排序的情况下,某个候选标识的模块匹配排名越靠后,表示该候选标识对应的测试终端所属的测试执行对象对待测模块越熟悉,则步骤S23中的按照模块匹配排名计算得到的该候选标识的权重值越高;在降序排序的情况下,某个候选标识的模块匹配排名越靠前,表示该候选标识对应的测试终端所属的测试执行对象对待测模块越熟悉,步骤S23中的按照模块熟悉排名计算得到的该候选标识的权重值越高。
在该实施例中,可以对候选标识的模块匹配权重进行计算,从而将候选标识对应的测试终端的所属测试执行对象对待测模块的测试熟悉程度纳入测试分配的考量范围,使得测试分配能够兼顾测试终端所属测试执行对象对模块的业务熟悉情况,并可以提高测试分配后的测试执行效率。
在一个实施例中,在所选策略为函数匹配策略的情况下,所选策略的权重为函数匹配权重;上述步骤S12中,确定每个候选标识的每个所选策略的权重的步骤,具体可以包括如下步骤。
S31,从预设的需求跟进信息中,根据待测模块的模块名对应的测试需求编号,获取本次测试提交的与需求编号对应的待测函数的函数名。
S32,从预设的模块被测信息中,根据与待测函数的函数名对应的测试终端标识和对应的测试结束时间,统计测试结束时间在当前时间之前的第二预定时间范围内,且每个候选标识对应的测试终端测试过待测函数的数量。
S33,按照统计的测试过待测函数的数量,对每个候选标识进行排序,得到每个候选标识的函数匹配排名。
S34,基于预设第二权重基线值和预设第二权重步长,按照函数匹配排名计算每个候选标识的权重值,得到每个候选标识的函数匹配权重。
在本申请实施例中,步骤S33中对每个候选标识的排序可以是升序排序,也可以是降序排序。在升序排序的情况下,某个候选标识的函数匹配排名越靠后,表示该候选标识对应的测试终端所属的测试执行对象对待测函数越熟悉,步骤S34中按照函数匹配排名计算得到的该候选标识的权重值越高;在降序排序的情况下,某个候选标识的函数熟悉排名越靠前,表示该候选标识对应的测试终端所属的测试执行对象对待测函数越熟悉,步骤S34中的按照函数匹配排名计算得到的该候选标识的权重值越高。
在该实施例中,可以对候选标识的函数匹配权重进行计算,从而将候选标识对应的测试终端的所属测试执行对象对待测函数的测试熟悉程度纳入测试分配的考量范围,使得测试分配能够兼顾测试执行对象对函数测试的业务熟悉情况,提高测试分配后的测试执行效率。
在一个实施例中,在所选策略为空闲匹配策略的情况下,所选策略的权重为空闲匹配权重;上述步骤S12中,确定每个候选标识的每个所选策略的权重的步骤,具体可以包括如下步骤。
S41,从预设的模块被测信息中,获取每个候选标识对应的模块名和对应的测试开始时间和测试结束时间。
S42,根据对应的测试开始时间和测试结束时间,统计每个候选标识对应的测试终端当前正在测试的模块的数量。
S43,按照统计的当前正在测试的模块的数量,对每个候选标识进行排序,得到每个候选标识对应的空闲匹配排名。
S44,基于预设第三权重基线值和预设第三权重步长,按照空闲匹配排名计算每个候选标识的权重值,得到每个候选标识对应的空闲匹配权重。
在步骤S41,可以从模块被测信息中,获取每个候选标识所对应模块的测试开始时间和测试结束时间,从而确定每个候选标识对应的测试终端当前正在测试的模块的数量。
在本申请实施例中,步骤S43中的排序可以是升序排序,也可以是降序排序。在升序排序的情况下,某个候选标识对应的测试终端当前正在测试的模块的数量越少,则空闲排名越靠前,表示该候选标识对应的测试终端的空闲程度越高,步骤S44中按照空闲匹配排名计算得到的该候选标识的权重值越高;在降序排序的情况下,某个候选标识对应的测试终端当前正在测试的模块的数量越少,该候选标识的空闲匹配排名越靠后,表示该候选标识对应的测试终端的空闲程度越高,步骤S44中按照空闲匹配排名计算得到的该候选标识的权重值越高。
在该实施例中,可以对候选标识的空闲匹配权重进行计算,从而将候选标识对应的测试终端所属的测试执行对象的空闲程度纳入测试分配的考量条件,使得测试分配能够兼顾测试执行对象的工作量、休假情况和人力资源调整等实际情况,分配方式更加合理,避免了将测试任务分配至没有测试空闲的测试执行对象的测试终端而导致的二次分配,从而避免浪费沟通时间,提高了测试分配的效率和准确性。
在一个实施例中,在所选策略为研发项目匹配策略的情况下,所选策略的权重为研发项目匹配权重;上述步骤S12中,确定每个候选标识的每个所选策略的权重的步骤,具体可以包括如下步骤。
S51,根据预设的需求跟进信息,确定待测模块的模块名对应的研发者标识,并获取确定的研发者标识所对应的每个提测项目名和每个提测项目名对应的测试终端标识。
S52,在确定的研发者标识所对应的每个提测项目名中,统计每个候选标识对应的提测项目名的数量。
S53,根据统计的提测项目名的数量,对每个候选标识进行排序,得到每个候选标识的研发项目匹配排名。
S54,基于预设第四权重基线值和预设第四权重步长,按照研发项目匹配排名计算每个候选标识的权重值,得到每个候选标识的研发项目匹配程度权重。
在本申请实施例中,步骤S53中的排序可以是升序排序,也可以是降序排序。在升序排序的情况下,某个候选标识的研发项目匹配排名靠后,表示该候选标识的对应的待测终端所属的测试执行对象对待测模块所对应的研发者的项目越熟悉,则S54中按照研发项目匹配排名计算得到的候选标识的权重值越高;在降序排序的情况下,某个候选标识的研发项目匹配排名越靠前,表示该候选标识的对应的待测终端所属的测试执行对象对待测模块所对应的研发者的项目越熟悉,则S54中按照研发项目匹配排名计算得到的候选标识的权重值越高。
在该实施例中,可以对候选标识的研发项目匹配权重进行计算,从而将候选标识对应的测试终端所属的测试执行对象与待测模块对应的研发者的项目熟悉程度纳入测试分配的考量范围,从而使得测试终端所属的测试执行对象可以和研发者高效配合,提高测试效率。
应理解,在上述实施例中,第一权重基线值、第二权重基线值、第三权重基线值和第四权重基线值可以相同也可以不同,第一权重基线值、第二权重基线值、第三权重基线值和第四权重基线值不同时,可以根据实际应用场景中所选策略的重要程度,自定义设置第一权重基线值、第二权重基线值、第三权重基线值和第四权重基线值。
相应地,预设第一权重步长、预设第二权重步长、预设第三权重步长和预设第四权重步长可以相同也可以不同,可以根据实际情况中所选策略的重要程度自行设定,本申请实施例不做具体限定。
在一个实施例中,在根据分配策略,计算每个候选标识的每个所选策略的权重之前,本申请实施例的测试分配方法还可以包括如下步骤。
S61,获取模块被测信息和需求跟进信息。
其中,模块被测信息至少包括如下被测信息项:预定模块的模块名、预定模块中的预定函数的函数名、每个函数名对应的测试终端标识、测试开始时间和测试结束时间;需求跟进信息至少包括如下跟进信息项:预定模块的模块名、对应的需求编号、需求编号对应的函数名、模块名对应的测试终端标识、模块名对应的提测项目名、以及提测项目名对应的研发者标识。
在步骤S230中从候选标识中确定分配的待测模块的模块名对应的目标标识的步骤之后,本申请实施例的测试分配方法还可以包括:S62,针对本次测试过程,记录与待测模块的模块名对应的目标标识对应的被测信息项和对应的跟进信息项,以对模块被测信息和需求跟进信息进行信息更新。
在该实施例中,可以结合需求跟进信息所反应的当前项目信息和模块被测信息所反应的历史项目信息进行测试分配,在根据业务情况进行测试分配时,在根据本次测试所涉及业务选择分配策略后,根据预先获取的模块被测信息和需求跟进信息进行权重计算。
并且,在从候选标识中确定分配的待测模块的模块名对应的目标标识之后,即在进行测试分配之后,需要根据本次测试过程中的相关信息进行记录,从而对模块被测信息和需求跟进信息进行信息更新,从而为后续再进行测试分配时提供更新的数据。
在一个实施例中,测试方向信息中包括预设模块的模块名、与预设模块的模块名对应的测试终端标识和每个测试终端标识的基本权重;步骤S230具体可以包括如下步骤。
S71,根据待测模块的模块名和候选标识,从测试方向信息中获取每个候选标识的基本权重。
S72,计算基本权重和策略权重的乘积,得到每个候选标识的权重得分。
S73,根据每个候选标识的权重得分,从候选标识中选择待测模块的模块名对应的目标标识。
在一个实施例中,可以根据每个候选标识的权重得分,从权重得分高于第一得分阈值的候选标识中随机选择预定数量的标识作为目标标识;或者,从权重得分高于第一得分阈值的候选标识中,按照得分从高到低来选择预定数量的标识作为目标标识。
在该实施例中,可以结合基本权重和策略权重来确定候选标识的权重得分,基本权重可以体现对每个候选标识进行初始分配的倾向性,策略权重可以体现根据业务情况对每个候选标识进行测试分配的倾向性,从而可以在初始的分配倾向性的基础上,根据业务情况选择不同的分配策略,从而将基本权重与策略权重进行融合,实现从研发到提测流程的自动化,使得测试分配具有充分的业务自定义调整空间。
在一个实施例中,在步骤S210之前,本申请实施例的测试分配方法还可以包括如下步骤。
S81,针对预设模块的模块名,设置对应的至少一个测试终端的测试终端标识。
S82,根据采集的每个测试终端的主力跟进模块的模块名和辅助跟进模块的模块名,对每个测试终端标识设置基本权重。
其中,对于同一模块的模块名,作为主力跟进模块的情况下对应的测试终端标识的基本权重,大于作为辅助跟进模块的情况下对应的测试终端标识的基本权重。
在该实施例中,由于测试终端与模块通常是一对多的关系,一个测试终端通常可以测试多个模块,多个模块中可以包括该测试终端主力跟进的模块和辅助跟进的模块,根据测试终端对模块的主力跟进或辅助跟进的情况,设置测试终端标识的基本权重,得到测试分配的初始分配时的权重倾向。
在一个实施例中,上述步骤S73中根据每个候选标识的权重得分,从候选标识中选择待测模块的模块名对应的目标标识的步骤,具体可以包括如下步骤。
S91,根据每个候选标识的权重得分,获取权重得分的最大值作为权重上限值,并将权重上限值与预定调整值的差值,作为权重下限值。
S92,从权重得分在权重下限值和权重上限值之间的候选标识中,随机选择预定数量的标识作为目标标识。
在该实施例中,为了避免出现通过权重计算结果进行测试分配的过程中,对业务情况越熟悉,因策略选择(例如模块匹配策略、函数匹配策略和研发项目匹配策略中的至少一种)计算权重得分,并按照权重得分从高到低的进行分配而导致的某个候选标识的权重得分越高,越倾向于分配更多的测试任务给该候选标识对应的测试终端的情况。因此,在本申请实施例中,可以通过候选标识的权重得分中的最大值和预定调整值测试计算出一个权重区间,在该区间范围内,为待测模块的模块名随机确定所分配的对应的目标标识,从而解决因上述策略选择而导致的测试分配的过度倾向性问题,实现使得测试结果能够根据实际情况做出调整,分配结果更加合理。
在本申请实施例中,实现了一种根据业务的不同而加载不同策略,从而对待测模块的模块名对应的测试终端标识进行权重计算,从而根据权重计算结果灵活进行测试分配,将原本需要通过人力或通过手工操作进行测试分配的流程用自动化取代,释放了进行测试分配的人力和等待分配的搁置耗时,并可以避免因人工分配导致的错误分配的误差情况,使得测试分配结果更符合本次测试的业务情况,提高了测试分配的效率和准确程度。
图3是本申请另一实施例提供的测试分配方法的流程图。如图3所示,该测试分配方法可以包括如下步骤。
S310,确定被测模块的模块名。
S320,获取被测模块的模块名对应的测试终端标识,作为候选标识。
在该步骤中,测试终端的归属信息包括测试终端所属测试执行对象的身份信息。通过读取测试方向表,获取被测模块的模块名和模块名对应的测试终端标识,并确定该对应的测试终端标识的基本权重。作为示例,可以将从测试方向表中获取的被测模块的模块名对应的测试终端的标识,记录为候选标识列表QA_List。
S330,基于所选策略计算每个候选标识的权重得分。
在该步骤中,可以根据不同的业务加载不同策略,进行权重计算。本申请实施例采用的策略可以包括如下策略类型中的一种或多种:基本策略、空闲匹配策略、模块匹配策略、函数匹配策略、研发(Research&Development,RD)项目匹配策略;策略权重可以包括如下权重类型中的一种或多种:基本权重、空闲匹配权重、模块匹配权重、函数匹配权重、研发项目匹配权重。
下面以函数匹配程度为例描述函数匹配权重计算过程。
S331,确定被测模块的模块名对应的需求编号,从需求跟进情况表中获取该需求编号对应的函数名,得到被测模块的模块名与本次提交的测试需求对应的函数名,记为待测函数的函数名。
作为一个示例,若该函数是一个运算类函数例如diff函数,将本次提交的测试需求对应的所有该待测函数的函数名记为diff_func_list。
S332,根据待测模块名和待测函数名,从需求跟进情况表中获取当前时间之前的预定时间范围内测试过该待测函数的K个测试终端的测试终端标识,例如可以记为Tested_QA_list,其中K为大于或等于1的整数。
在本申请实施例中,由于模块被测信息中可以包括预定模块的模块名、预定模块中的预定函数的函数名、每个函数名对应的测试终端标识、测试开始时间和测试结束时间。因此,可以根据测试过预定函数和所属模块的测试终端、测试开始时间和测试结束时间,获取当前时间之前的预定时间范围内测试过该函数的测试终端的测试终端标识,以确定最近测试过该函数的测试终端。
S333,对于候选标识列表QA_List中的每个候选标识,统计每个候选标识对应的测试终端测试过该函数的个数,并按照统计的测试过该函数的个数,对每个候选标识进行升序排序。
在该步骤中,某个候选标识的排名越靠后,代表该候选标识对应的测试终端所属的测试执行对象对本次提测项目中的函数的修改点越熟悉。
S334,按照排序结果计算函数匹配权重。
在该步骤中,可以取函数匹配策略的权重基线值为1.0,函数匹配策略的权重步长为X,排名每靠后一位权重加X,X为自定义的取值,由此得到每个候选标识的函数匹配权重。
根据上述实施例描述的各个策略权重的计算方法,根据选择的每个需要加载的策略,计算每个候选标识的针对所选择策略的权重值,将同一候选标识的每个所选策略对应的权重值相加,得到候选标识的权重得分。
在一个实施例中,可以根据下面的表达式(1)计算权重得分。
Score=基本权重×∏策略权重 (1)
在上述表达式(1)中,Score为一个候选标识的权重得分,基本权重为该候选标识的基本权重,∏策略权重为该候选标识的每个所选策略的策略权重之和。
S340,根据计算得到的每个候选标识的权重得分,对每个候选标识进行排序。
在该步骤中,在计算得到每个候选标识的权重得分后,按照权重得分进行降序排序,某个候选标识的权重得分越高,该候选标识的排名越靠前,代表该候选标识对应的测试终端越合适对本次测试中的提测项目进行跟进和测试。
S350,执行优化(Explore)策略,得到权重得分区间。
在该步骤中,由于上述策略权重的计算结果可能导致某候选标识的权重得分越高,分配结果越倾向于分配更多的测试任务给该候选标识对应的测试终端的情况,因此可以引入优化策略进行处理。作为示例,可以将权重值Y作为权重阈值,取权重得分中的最高得分Z,计算权重得分中的最高得分与权重阈值的差值Z-Y,得到权重区间范围[Z-Y,Z]。其中,Z和Y为自定义的取值,可以根据实际情况进行设置。
S360,根据权重得分区间范围内的候选标识,从候选标识中确定待测模块的模块名对应的目标标识。
在该步骤中,可以获取权重得分在[Z-Y,Z]区间范围内的候选标识,并对该区间范围内的候选标识进行随机选择,将从该区间范围内随机选择的候选标识作为目标标识,以使用目标标识对应的测试终端进行测试。
根据本申请实施例的测试分配方法,可以根据业务特点加载不同的策略,进行策略权重的计算,从而根据计算得到的策略权重进行测试分配。本申请实施例中,通过不同策略的选择和组合,可以兼顾本次测试业务情况,以及兼顾测试终端设备的空闲匹配情况、模块匹配情况、函数匹配情况以及研发项目匹配情况中的一种或多种匹配情况,因此可以适应测试执行对应的休假和人力调整等不同应用场景中的真实状态。并且,通过explore策略可以解决于因策略权重计算结果导致测试分配时,过度倾向性于选择权重得分最高的测试终端而造成的分配不合理的问题。
通过本申请实施例的测试分配方法,可以实现从研发到提测流程的自动化,并可以充分根据业务自定义选择不同的权重计算策略,实现根据不同业务自定义调整分配结果,灵活性更高且调整空间更充分。
图4是本申请实施例的提供的测试分配装置的组成框图。
第二方面,参照图4,本申请实施例提供一种测试分配装置400。
候选标识获取模块410,用于从预设的测试方向信息中,获取与待测模块的模块名对应的测试终端标识作为候选标识,每个测试终端标识用于标识一个测试终端的归属信息。
权重计算模块420,用于根据本次测试所涉及业务确定分配策略,并根据分配策略,计算每个候选标识的策略权重。
目标标识确定模块430,用于基于策略权重,从候选标识中确定分配的待测模块的模块名对应的目标标识。
在一些实施例中,分配策略包括:模块匹配策略、函数匹配策略、空闲匹配策略和研发项目匹配策略中的至少一种。
权重计算模块420包括:策略选择模块,用于根据本次测试所涉及业务,从模块匹配策略、函数匹配策略、空闲匹配策略和研发项目匹配策略中,选择至少一个策略;策略权重确定模块,用于确定每个候选标识的每个所选策略的权重;权重计算模块420还用于计算同一候选标识的每个所选策略的权重之和,得到每个候选标识的策略权重。
在一些实施例中,在所选策略为模块匹配策略的情况下,所选策略的权重为模块匹配权重;策略权重确定模块具体用于:从预设的模块被测信息中,获取待测模块的模块名对应的测试终端标识和对应的测试结束时间;统计测试结束时间在当前时间之前的第一预定时间范围内,每个候选标识对应的测试终端对待测模块的测试次数;按照统计的对待测模块的测试次数,对每个候选标识进行排序,得到每个候选标识的模块匹配排名;基于预设第一权重基线值和预设第一权重步长,按照模块匹配排名计算每个候选标识的权重值,得到每个候选标识的模块匹配权重。
在一些实施例中,在所选策略为函数匹配策略的情况下,所选策略的权重为函数匹配权重;策略权重确定模块具体用于:从预设的需求跟进信息中,根据待测模块的模块名对应的测试需求编号,获取本次测试提交的与需求编号对应的待测函数的函数名;从预设的模块被测信息中,根据与待测函数的函数名对应的测试终端标识和对应的测试结束时间,统计测试结束时间在当前时间之前的第二预定时间范围内,且每个候选标识对应的测试终端测试过待测函数的数量;按照统计的测试过待测函数的数量,对每个候选标识进行排序,得到每个候选标识的函数匹配排名;基于预设第二权重基线值和预设第二权重步长,按照函数匹配排名计算每个候选标识的权重值,得到每个候选标识的函数匹配权重。
在一些实施例中,在所选策略为空闲匹配策略的情况下,所选策略的权重为空闲匹配权重;策略权重确定模块具体用于:从预设的模块被测信息中,获取每个候选标识对应的模块名和对应的测试开始时间和测试结束时间;根据对应的测试开始时间和测试结束时间,统计每个候选标识对应的测试终端当前正在测试的模块的数量;按照统计的当前正在测试的模块的数量,对每个候选标识进行排序,得到每个候选标识对应的空闲匹配排名;基于预设第三权重基线值和预设第三权重步长,按照空闲匹配排名计算每个候选标识的权重值,得到每个候选标识对应的空闲匹配权重。
在一些实施例中,在所选策略为研发项目匹配策略的情况下,所选策略的权重为研发项目匹配权重;策略权重确定模块具体用于:根据预设的需求跟进信息,确定待测模块的模块名对应的研发者标识,并获取确定的研发者标识所对应的每个提测项目名和每个提测项目名对应的测试终端标识;在确定的研发者标识所对应的每个提测项目名中,统计每个候选标识对应的提测项目名的数量;根据统计的提测项目名的数量,对每个候选标识进行排序,得到每个候选标识的研发项目匹配排名;基于预设第四权重基线值和预设第四权重步长,按照研发项目匹配排名计算每个候选标识的权重值,得到每个候选标识的研发项目匹配程度权重。
在一些实施例中,测试分配装置400还可以包括:信息获取模块,用于在根据分配策略,计算每个候选标识的每个所选策略的权重之前,获取模块被测信息和需求跟进信息;其中,模块被测信息至少包括如下被测信息项:预定模块的模块名、预定模块中的预定函数的函数名、每个函数名对应的测试终端标识、测试开始时间和测试结束时间;需求跟进信息至少包括如下跟进信息项:预定模块的模块名、对应的需求编号、需求编号对应的函数名、模块名对应的测试终端标识、模块名对应的提测项目名、以及提测项目名对应的研发者标识。
在一些实施例中,测试分配装置400还可以包括:信息更新模块,用于在从候选标识中确定分配的待测模块的模块名对应的目标标识之后,针对本次测试过程,记录与待测模块的模块名对应的目标标识对应的被测信息项和对应的跟进信息项,以对模块被测信息和需求跟进信息进行信息更新。
在一些实施例中,测试方向信息中包括预设模块的模块名、与预设模块的模块名对应的测试终端标识和每个测试终端标识的基本权重;目标标识确定模块430,包括:基本权重获取单元,用于根据待测模块的模块名和候选标识,从测试方向信息中获取每个候选标识的基本权重;权重得分计算单元,用于计算基本权重和策略权重的乘积,得到每个候选标识的权重得分;目标标识确定模块430还用于根据每个候选标识的权重得分,从候选标识中选择待测模块的模块名对应的目标标识。
在一些实施例中,基本权重设置模块,用于在从预设的测试方向信息中,获取与待测模块的模块名对应的测试终端标识作为候选标识之前,针对预设模块的模块名,设置对应的至少一个测试终端的测试终端标识;根据采集的每个测试终端的主力跟进模块的模块名和辅助跟进模块的模块名,对每个测试终端标识设置基本权重;其中,对于同一模块的模块名,作为主力跟进模块的情况下对应的测试终端标识的基本权重,大于作为辅助跟进模块的情况下对应的测试终端标识的基本权重。
在一些实施例中,目标标识确定模块430还用于根据每个候选标识的权重得分,获取权重得分的最大值作为权重上限值,并将权重上限值与预定调整值的差值,作为权重下限值;从权重得分在权重下限值和权重上限值之间的候选标识中,随机选择预定数量的标识作为目标标识。
根据本申请的实施例的测试分配装置,根据本次测试所涉及的业务情况信息选择分配策略,并根据选择的分配策略,计算待测模块的模块名对应的每个候选标识的策略权重,并根据计算出来的权重从候选标识中确定目标标识,从而确定为待测模块分配的测试终端的测试终端标识,从而可以根据业务特点加载不同的分配策略进行测试分配,解决了如何对测试分配进行自动化处理的问题,提高了测试分配的效率和灵活选择。
根据本申请的实施例,本申请还提供了一种电子设备和一种可读存储介质和一种计算机程序产品。
图5示出了可以用来实施本公开的实施例的示例电子设备500的示意性框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本公开的实现。
如图5所示,设备500包括计算单元501,其可以根据存储在只读存储器(ROM)502中的计算机程序或者从存储单元508随机访问存储器(RAM)503中的计算机程序,来执行各种适当的动作和处理。在RAM503中,还可存储设备500操作所需的各种程序和数据。计算单元501、ROM502以及RAM503通过总线504彼此相连。输入/输出(I/O)接口505也连接至总线504。设备500中的多个部件连接至I/O接口505,包括:输入单元506,例如键盘、鼠标等;输出单元507,例如各种类型的显示器、扬声器等;存储单元508,例如磁盘、光盘等;以及通信单元509,例如网卡、调制解调器、无线通信收发机等。通信单元509允许设备500通过诸如因特网的计算机网络和/或各种电信网络与其他设备交换信息/数据。
计算单元501可以是各种具有处理和计算能力的通用和/或专用处理组件。计算单元501的一些示例包括但不限于中央处理单元(CPU)、图形处理单元(GPU)、各种专用的人工智能(AI)计算芯片、各种运行机器学习模型算法的计算单元、数字信号处理器(DSP)、以及任何适当的处理器、控制器、微控制器等。计算单元501执行上文所描述的各个方法和处理,例如测试分配方法。例如,在一些实施例中,测试分配方法可被实现为计算机软件程序,其被有形地包含于机器可读介质,例如存储单元508。在一些实施例中,计算机程序的部分或者全部可以经由ROM502和/或通信单元509而被载入和/或安装到设备500上。当计算机程序加载到RAM503并由计算单元501执行时,可以执行上文描述的测试分配方法的一个或多个步骤。备选地,在其他实施例中,计算单元501可以通过其他任何适当的方式(例如,借助于固件)而被配置为执行测试分配方法。
本文中以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、芯片上系统的系统(SOC)、负载可编程逻辑设备(CPLD)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
用于实施本公开的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或服务器上执行。
在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
为了提供与用户的交为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据服务器)、或者包括中间件部件的计算系统(例如,应用服务器)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)和互联网。
计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。
根据本公开的实施例,本公开还提供了一种计算机程序产品,包括计算机程序,计算机程序在被处理器执行时实现上述测试分配方法中任一项方法。
计算机系统可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。服务器可以为分布式服务器,或者是结合了区块链的服务器,通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。
根据本申请的实施例,本申请还提供了一种计算机程序产品,包括计算机程序,计算机程序在被处理器执行时实现上述测试分配方法中任一项测试分配方法方法。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发申请中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本申请公开的技术方案所期望的结果,本文在此不进行限制。
上述具体实施方式,并不构成对本申请保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本申请的精神和原则之内所作的修改、等同替换和改进等,均应包含在本申请保护范围之内。
Claims (14)
1.一种测试分配方法,其特征在于,包括:
从预设的测试方向信息中,获取与待测模块的模块名对应的测试终端标识作为候选标识,每个所述测试终端标识用于标识一个测试终端的归属信息;
根据本次测试所涉及业务确定分配策略,并根据所述分配策略,计算每个所述候选标识的策略权重;
基于所述策略权重,从所述候选标识中确定分配的所述待测模块的模块名对应的目标标识。
2.根据权利要求1所述的方法,其特征在于,所述分配策略包括:模块匹配策略、函数匹配策略、空闲匹配策略和研发项目匹配策略中的至少一种;
所述根据本次测试所涉及业务确定分配策略,并根据所述分配策略,计算每个所述候选标识的策略权重,包括:
根据本次测试所涉及业务,从所述模块匹配策略、所述函数匹配策略、所述空闲匹配策略和所述研发项目匹配策略中,选择至少一个策略;
确定每个所述候选标识的每个所选策略的权重;
计算同一所述候选标识的每个所选策略的权重之和,得到每个所述候选标识的策略权重。
3.根据权利要求2所述的方法,其特征在于,在所选策略为模块匹配策略的情况下,所述所选策略的权重为模块匹配权重;所述确定每个所述候选标识的每个所选策略的权重,包括:
从预设的模块被测信息中,获取所述待测模块的模块名对应的测试终端标识和对应的测试结束时间;
统计测试结束时间在当前时间之前的第一预定时间范围内,每个所述候选标识对应的测试终端对所述待测模块的测试次数;
按照统计的对所述待测模块的测试次数,对每个所述候选标识进行排序,得到每个所述候选标识的模块匹配排名;
基于预设第一权重基线值和预设第一权重步长,按照所述模块匹配排名计算每个所述候选标识的权重值,得到每个所述候选标识的模块匹配权重。
4.根据权利要求2所述的方法,其特征在于,在所选策略为函数匹配策略的情况下,所述所选策略的权重为函数匹配权重;所述确定每个所述候选标识的每个所选策略的权重,包括:
从预设的需求跟进信息中,根据所述待测模块的模块名对应的测试需求编号,获取本次测试提交的与所述需求编号对应的待测函数的函数名;
从预设的模块被测信息中,根据与所述待测函数的函数名对应的测试终端标识和对应的测试结束时间,统计测试结束时间在当前时间之前的第二预定时间范围内,且每个所述候选标识对应的测试终端测试过所述待测函数的数量;
按照统计的测试过所述待测函数的数量,对每个所述候选标识进行排序,得到每个所述候选标识的函数匹配排名;
基于预设第二权重基线值和预设第二权重步长,按照所述函数匹配排名计算每个所述候选标识的权重值,得到每个所述候选标识的函数匹配权重。
5.根据权利要求2所述的方法,其特征在于,在所选策略为空闲匹配策略的情况下,所述所选策略的权重为空闲匹配权重;所述确定每个所述候选标识的每个所选策略的权重,包括:
从预设的模块被测信息中,获取每个所述候选标识对应的模块名和对应的测试开始时间和测试结束时间;
根据所述对应的测试开始时间和测试结束时间,统计每个所述候选标识对应的测试终端当前正在测试的模块的数量;
按照统计的所述当前正在测试的模块的数量,对每个所述候选标识进行排序,得到每个所述候选标识对应的空闲匹配排名;
基于预设第三权重基线值和预设第三权重步长,按照所述空闲匹配排名计算每个所述候选标识的权重值,得到每个所述候选标识对应的空闲匹配权重。
6.根据权利要求2所述的方法,其特征在于,在所选策略为研发项目匹配策略的情况下,所述所选策略的权重为研发项目匹配权重;所述确定每个所述候选标识的每个所选策略的权重,包括:
根据预设的需求跟进信息,确定所述待测模块的模块名对应的研发者标识,并获取确定的所述研发者标识所对应的每个提测项目名和所述每个提测项目名对应的测试终端标识;
在确定的所述研发者标识所对应的每个提测项目名中,统计每个所述候选标识对应的提测项目名的数量;
根据统计的所述提测项目名的数量,对每个所述候选标识进行排序,得到每个所述候选标识的研发项目匹配排名;
基于预设第四权重基线值和预设第四权重步长,按照所述研发项目匹配排名计算每个所述候选标识的权重值,得到每个所述候选标识的研发项目匹配程度权重。
7.根据权利要求3-5中任一项所述的方法,其特征在于,在所述根据所述分配策略,计算每个所述候选标识的每个所选策略的权重之前,所述方法还包括:
获取模块被测信息和需求跟进信息;
其中,所述模块被测信息至少包括如下被测信息项:预定模块的模块名、所述预定模块中的预定函数的函数名、每个所述函数名对应的测试终端标识、测试开始时间和测试结束时间;
所述需求跟进信息至少包括如下跟进信息项:预定模块的模块名、对应的需求编号、所述需求编号对应的函数名、所述模块名对应的测试终端标识、所述模块名对应的提测项目名、以及所述提测项目名对应的研发者标识;
在所述从所述候选标识中确定分配的所述待测模块的模块名对应的目标标识之后,所述方法还包括:
针对本次测试过程,记录与所述待测模块的模块名对应的目标标识对应的所述被测信息项和对应的所述跟进信息项,以对所述模块被测信息和所述需求跟进信息进行信息更新。
8.根据权利要求1所述的方法,其特征在于,所述测试方向信息中包括预设模块的模块名、与所述预设模块的模块名对应的测试终端标识和每个所述测试终端标识的基本权重;
所述基于所述策略权重,从所述候选标识中确定分配的所述待测模块的模块名对应的目标标识,包括:
根据所述待测模块的模块名和所述候选标识,从所述测试方向信息中获取每个所述候选标识的基本权重;
计算所述基本权重和所述策略权重的乘积,得到每个所述候选标识的权重得分;
根据每个所述候选标识的权重得分,从所述候选标识中选择所述待测模块的模块名对应的目标标识。
9.根据权利要求1或8所述的方法,其特征在于,在从预设的测试方向信息中,获取与待测模块的模块名对应的测试终端标识作为候选标识之前,所述方法还包括:
针对预设模块的模块名,设置对应的至少一个测试终端的测试终端标识;
根据采集的每个所述测试终端的主力跟进模块的模块名和辅助跟进模块的模块名,对每个所述测试终端标识设置基本权重;
其中,对于同一模块的模块名,作为主力跟进模块的情况下对应的测试终端标识的基本权重,大于作为辅助跟进模块的情况下对应的测试终端标识的基本权重。
10.根据权利要求8所述的方法,所述根据每个所述候选标识的权重得分,从所述候选标识中选择所述待测模块的模块名对应的目标标识,包括:
根据每个所述候选标识的权重得分,获取权重得分的最大值作为权重上限值,并将所述权重上限值与预定调整值的差值,作为权重下限值;
从权重得分在所述权重下限值和所述权重上限值之间的候选标识中,随机选择预定数量的标识作为所述目标标识。
11.一种测试分配装置,其特征在于,包括:
候选标识获取模块,用于从预设的测试方向信息中,获取与待测模块的模块名对应的测试终端标识作为候选标识,每个所述测试终端标识用于标识一个测试终端的归属信息;
权重计算模块,用于根据本次测试所涉及业务确定分配策略,并根据所述分配策略,计算每个所述候选标识的策略权重;
目标标识确定模块,用于基于所述策略权重,从所述候选标识中确定分配的所述待测模块的模块名对应的目标标识。
12.一种电子设备,其特征在于,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1-10中任一项所述的方法。
13.一种存储有计算机指令的非瞬时计算机可读存储介质,其特征在于,所述计算机指令用于使所述计算机执行权利要求1-10中任一项所述的方法。
14.一种计算机程序产品,包括计算机程序,所述计算机程序在被处理器执行时实现根据权利要求1-10中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011479147.5A CN112559347B (zh) | 2020-12-15 | 2020-12-15 | 测试分配方法及装置、设备、可读介质和计算机程序产品 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011479147.5A CN112559347B (zh) | 2020-12-15 | 2020-12-15 | 测试分配方法及装置、设备、可读介质和计算机程序产品 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112559347A true CN112559347A (zh) | 2021-03-26 |
CN112559347B CN112559347B (zh) | 2024-02-20 |
Family
ID=75063743
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011479147.5A Active CN112559347B (zh) | 2020-12-15 | 2020-12-15 | 测试分配方法及装置、设备、可读介质和计算机程序产品 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112559347B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2024099062A1 (zh) * | 2022-11-11 | 2024-05-16 | 广州市百果园信息技术有限公司 | 一种服务区域的权重系数更新方法及装置 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040243692A1 (en) * | 2003-05-29 | 2004-12-02 | International Business Machines Corporation | Policy-based, autonomically allocated storage |
CN101836190A (zh) * | 2007-10-31 | 2010-09-15 | 国际商业机器公司 | 用于将多个作业分配给多个计算机的方法、系统和计算机程序 |
CN103298016A (zh) * | 2012-02-27 | 2013-09-11 | 展讯通信(上海)有限公司 | 移动终端的测试系统 |
CN111651350A (zh) * | 2020-05-29 | 2020-09-11 | 泰康保险集团股份有限公司 | 测试用例处理方法、装置、设备及计算机可读存储介质 |
US20200357013A1 (en) * | 2018-04-20 | 2020-11-12 | Beijing Didi Infinity Technology And Development Co., Ltd. | Systems and methods for coupon issuing |
-
2020
- 2020-12-15 CN CN202011479147.5A patent/CN112559347B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040243692A1 (en) * | 2003-05-29 | 2004-12-02 | International Business Machines Corporation | Policy-based, autonomically allocated storage |
CN101836190A (zh) * | 2007-10-31 | 2010-09-15 | 国际商业机器公司 | 用于将多个作业分配给多个计算机的方法、系统和计算机程序 |
CN103298016A (zh) * | 2012-02-27 | 2013-09-11 | 展讯通信(上海)有限公司 | 移动终端的测试系统 |
US20200357013A1 (en) * | 2018-04-20 | 2020-11-12 | Beijing Didi Infinity Technology And Development Co., Ltd. | Systems and methods for coupon issuing |
CN111651350A (zh) * | 2020-05-29 | 2020-09-11 | 泰康保险集团股份有限公司 | 测试用例处理方法、装置、设备及计算机可读存储介质 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2024099062A1 (zh) * | 2022-11-11 | 2024-05-16 | 广州市百果园信息技术有限公司 | 一种服务区域的权重系数更新方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN112559347B (zh) | 2024-02-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108959059B (zh) | 一种测试方法以及测试平台 | |
CN111221726A (zh) | 一种测试数据生成方法、装置、存储介质和智能设备 | |
JP2013152618A (ja) | エネルギー使用量管理システム | |
CN107679683B (zh) | 软件开发进度预警方法和装置 | |
CN109558101B (zh) | 财务信息动态显示方法、装置及存储介质、服务器 | |
CN110764999A (zh) | 自动化测试方法、装置、计算机装置及存储介质 | |
CN113723810A (zh) | 基于图数据库的电网建模方法 | |
CN105868956A (zh) | 一种数据处理方法及装置 | |
CN107357721B (zh) | 测试系统的方法及装置 | |
CN115879706A (zh) | 计量资产盘点方法、装置、电子设备及可读存储介质 | |
CN112559347B (zh) | 测试分配方法及装置、设备、可读介质和计算机程序产品 | |
CN117217612A (zh) | 任务指标数字化管控方法及系统 | |
CN116630082A (zh) | 生产资源的分配方法、装置、电子设备及存储介质 | |
CN112905722B (zh) | 一种行为识别的方法、装置及存储介质 | |
CN114662952A (zh) | 一种行为数据的评价方法、装置、设备及存储介质 | |
KR20180082214A (ko) | 미청구공사의 위험도 평가 시스템 및 평가 장치 | |
CN114254991A (zh) | 目标对象的提报方法、装置及设备 | |
CN112801688A (zh) | 估值失败原因的定位方法和装置 | |
CN111159988A (zh) | 一种模型处理方法、装置、计算机设备及存储介质 | |
CN113727217B (zh) | 基于近场通信的电力户表信息处理系统 | |
CN117764423A (zh) | 工程效能的度量方法、装置、电子设备和存储介质 | |
CN112988555B (zh) | 接口测试方法、装置、设备及存储介质 | |
CN114186830A (zh) | 一种基于bim的工程监管方法、装置及电子设备 | |
KR101617651B1 (ko) | 트랜잭션 에디터를 이용한 이 기종간 데이터 전송 시스템 및 방법 | |
CN111768130A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |