本发明涉及应用发布,特别是涉及一种多需求下缩短应用进入可发布状态时间的装置。
背景技术:
1、在基于敏捷开发的背景下,很多研发团队会每周有一个固定发布日,每周发布一个迭代,在每个迭代指定一系列要发布的需求。一个需求会涉及到很多应用,那么需求和应用就是一个多对多的关系;一般测试活动最后一个步骤就是预发测试,预发测试通过应用才可以进入可发布状态,每个需求大小不一,预发测试结束时间有先后顺序。而发布是按照应用维度进行上线,每个应用会涉及到多个需求,很多时候发布日当天大很多需求才会进行最后一轮预发测试。这种不确定性将会导致对于单个应用是否可以发布上线测试和运维存在争议,运维是希望每个应用只发布一次,测试希望需求在预发测试完成即可上线进行线上验证,减少自己等待其他测试人员预发测试完成时间。
2、实践过程中大概有两种通用方式,一种是本次迭代所有需求预发均测试完成再通知运维进行上线,这样运维和测试人员会有很多等待时间,每次上线日都会很晚结束;另外一种是需求测试完成即对这个需求涉及到的应用进行发布,这种会导致发布日当天发布频繁,频繁发布会对线上应用的稳定性造成一定影响。
技术实现思路
1、针对上述技术问题,本发明采用的技术方案为:
2、本申请提供了一种多需求下缩短应用进入可发布状态时间的装置,所述装置包括:处理器和存储介质;其中,所述存储介质中存储有至少一条指令或至少一段程序,所述至少一条指令或所述至少一段程序由处理器加载并执行以实现以下步骤:
3、s100,获取第一预设值q=1;
4、s200,若q<n,则获取每一待发布的应用,以得到第q待发布应用列表aq=(aq,1,aq,2,…,aq,i,…,aq,f(q)),i=1,2,…,f(q);否则,跳出当前处理;其中,aq,i为第q次获取到的第i个待发布应用,f(q)为第q次获取到的待发布应用的数量;
5、s300,获取aq中每一待发布应用对应的待测试需求,以得到aq对应的待测试需求列表bq=(bq,1,bq,2,…,bq,i,…,bq,f(q));其中,bq,i为aq,i对应的待测试需求列表;bq,i=(bqi,1,bqi,2,…,bqi,j,…,bqi,g(i)),j=1,2,…,g(i);bqi,j为第q次获取到的第i个待发布应用对应的第j个待测试需求,g(i)为第q次获取到的第i个待发布应用对应的待测试需求的数量;
6、s400,根据aq中每一待测试应用对应的待测试需求的数量,对aq中的待发布应用进行排序,以得到aq对应的排序后的待发布应用列表cq=(cq,1,cq,2,…,cq,i,…,cq,f(q));其中,cq,i为对aq中的待发布应用进行排序后得到的第i个待发布应用;g(r)≤g(r+1);r=1,2,…,f(q)-1;
7、s500,若g(1)<g(2),则对cq,1对应的待测试需求进行测试,并对cq,1进行发布;进入s600;
8、s600,更新q=q+1,进入s200。
9、进一步的,步骤s500还包括以下步骤:
10、s510,若g(1)=g(2),则获取cq,1对应的每一待测试需求以及cq,2对应的每一待测试需求;
11、s511,对cq,1对应的每一待测试需求以及cq,2对应的每一待测试需求进行去重,以得到cq,1和cq,2对应的中间待测试需求;
12、s512,获取每一中间待测试需求对应的待发布应用的数量;
13、s513,针对每一中间待测试需求,对应待发布应用的数量多的进行先测试,每测试完成一个中间待测试需求,进入s600。
14、进一步的,步骤s500还包括以下步骤:
15、s520,若cq中的前p个待测试应用对应的待测试需求的数量相同,则分别获取cq中的前p个待测试应用对应的每一待测试需求;
16、s521,对cq中的前p个待测试应用对应的每一待测试需求进行去重,以得到cq中的前p个待测试应用对应的中间待测试需求;
17、s522,针对每一中间待测试需求,对应待发布应用的数量多的进行先测试,每测试完成一个中间待测试需求,进入s600。
18、本发明至少具有以下有益效果:
19、本发明的多需求下缩短应用进入可发布状态时间的装置,获取第一预设值q=1;若q<n,则获取每一待发布的应用,以得到第q待发布应用列表aq;获取aq中每一待发布应用对应的待测试需求,以得到aq对应的待测试需求列表bq;根据aq中每一待测试应用对应的待测试需求的数量,对aq中的待发布应用进行排序,以得到aq对应的排序后的待发布应用列表cq;若g(1)<g(2),则对cq,1对应的待测试需求进行测试,并对cq,1进行发布;本发明中,通过上述方法,使得优先级较高的待测试需求首先进行测试,从而减少运维无效等待,让运维发布人员效率最大化;运维发布应用后通过需求和应用关联关系,即可计算出可线上验证的需求,测试人员无需等待所有应用完成发布即可转入验证,提升了测试效率。
1.一种多需求下缩短应用进入可发布状态时间的装置,其特征在于,所述装置包括:处理器和存储介质;其中,所述存储介质中存储有至少一条指令或至少一段程序,所述至少一条指令或所述至少一段程序由处理器加载并执行以实现以下步骤:
2.根据权利要求1所述的多需求下缩短应用进入可发布状态时间的装置,其特征在于,步骤s500还包括以下步骤:
3.根据权利要求1所述的多需求下缩短应用进入可发布状态时间的装置,其特征在于,步骤s500还包括以下步骤: