用于对比基线代码和对照代码的测试方法、系统、设备、介质和计算机程序产品与流程

文档序号:36787983发布日期:2024-01-23 12:05阅读:15来源:国知局
用于对比基线代码和对照代码的测试方法、系统、设备、介质和计算机程序产品与流程

本发明涉及计算机,特别涉及用于对比基线代码和对照代码的测试方法、系统、设备、介质和计算机程序产品。


背景技术:

1、性能服务迭代中日益重要,例如,搜广推(搜索、广告、推荐)服务中有几百个策略或算子上线,其中某一个策略或算子出现了性能问题,那么将会影响整个搜广推的效果和用户体验。因此需要对服务进行性能测试,目前已经有各种成熟的性能测试技术,但是无法满足所有业务形态的场景,例如,现有的性能测试技术无法满足以下几个方面的要求:隔离环境和第三方因素的影响、简单高效地兼容不同协议服务、资源的可回收利用以及结果的可置信等。


技术实现思路

1、本发明的目的在于提供用于对比基线代码和对照代码的测试方法、系统、设备、介质和计算机程序产品,解决现有压测技术中无法隔离环境和第三方因素的影响以及无法保证结果的可置信等问题。

2、本发明的实施方式公开了一种用于对比基线代码和对照代码的测试方法,用于电子设备,包括:

3、获取基线代码的线上服务接收到的请求数据;

4、基于该请求数据生成测试数据;

5、在容器中部署该基线代码的第一服务、该基线代码的第二服务和对照代码的第三服务;

6、使用该测试数据对该第一服务、该第二服务和该第三服务进行测试;

7、确定该第一服务和该第三服务的测试结果之间的对比信息、该第二服务和该第三服务的测试结果之间的对比信息;

8、对比该第一服务和该第二服务的测试结果之间的差异,如果该差异在预定阈值以下,则确定本次测试结果可信,否则确定本次测试结果不可信。

9、可选地,在容器中部署该基线代码的第一服务、该基线代码的第二服务和对照代码的第三服务包括:

10、使用kubernetes进行容器编排,使得该第一服务、该第二服务和该第三服务具有相同的配置环境,并且将该第一服务、该第二服务和该第三服务与该线上服务进行命名空间隔离。

11、可选地,获取基线代码的线上服务接收到的请求数据包括:

12、每经过预定时间,在最近接收到的该请求数据中,选择出具有预定接口名、响应正常的该请求数据;

13、在选择出的该请求数据中,进一步选择出响应数据包括预定字段的该请求数据,并且使得进一步选择出的该请求数据满足预定的功能覆盖率;

14、存储进一步选择出的该请求数据。

15、可选地,该预定的功能覆盖率为40%。

16、可选地,基于该请求数据生成测试数据包括:

17、对该请求数据进行脱敏处理,并为该请求数据添加用于监控的标记。

18、可选地,使用该测试数据对该第一服务、该第二服务和该第三服务进行测试包括:

19、通过jmeter使用该测试数据向该第一服务、该第二服务和该第三服务发送请求,以进行压力测试。

20、可选地,该测试结果包括jmeter指标、机器指标和业务指标。

21、本发明的实施方式公开了一种用于对比基线代码和对照代码的测试系统,包括:

22、测试数据生成模块,用于获取基线代码的线上服务接收到的请求数据,并基于该请求数据生成测试数据;

23、服务部署模块,用于在容器中部署该基线代码的第一服务、该基线代码的第二服务和对照代码的第三服务;

24、测试总控模块,用于使用该测试数据对该第一服务、该第二服务和该第三服务进行测试;并确定该第一服务和该第三服务的测试结果之间的对比信息、该第二服务和该第三服务的测试结果之间的对比信息;以及对比该第一服务和该第二服务的测试结果之间的差异,如果该差异在预定阈值以下,确定本次测试结果可信,否则确定本次测试结果不可信。

25、本发明的实施方式公开了一种用于对比基线代码和对照代码的测试设备,该设备包括存储有计算机可执行指令的存储器和处理器,当该指令被该处理器执行时,使得该设备实施根据本发明的实施方式的用于对比基线代码和对照代码的测试方法。

26、本发明的实施方式公开了一种计算机存储介质,在该计算机存储介质上存储有指令,当该指令在计算机上运行时,使得该计算机执行根据本发明的实施方式的用于对比基线代码和对照代码的测试方法。

27、本发明的实施方式公开了一种计算机程序产品,包括计算机可执行指令,该指令被处理器执行以实施根据本发明的实施方式的用于对比基线代码和对照代码的测试方法。

28、本发明实施方式与现有技术相比,主要区别及其效果在于:

29、在本发明中,对用于测试的流量进行可用性和覆盖率校验筛选,保证了多样性和覆盖性。利用kubernetes的容器编排保证被测服务之间只有代码上的差异,服务配置环境因素相同,并且将不同的业务线服务归属于用一个测试应用下统一管理,避免集中在各相对应的业务应用下。设置了两组基线版本服务和一组对照版本服务,使用相同的压测数据异步同时向两组基线版本服务和对照版本服务发压,当两组基线版本服务之间的测试指标值对比差异满足阈值要求,基线版本服务和对照版本服务之间的对比测试结果才会置信,排除环境以及第三方因素的干扰。实现了自动化、流程化,将人为因素降低。



技术特征:

1.一种用于对比基线代码和对照代码的测试方法,用于电子设备,其特征在于,包括:

2.根据权利要求1所述的方法,其特征在于,在容器中部署所述基线代码的第一服务、所述基线代码的第二服务和对照代码的第三服务包括:

3.根据权利要求1所述的方法,其特征在于,所述获取基线代码的线上服务接收到的请求数据包括:

4.根据权利要求3所述的方法,其特征在于,所述预定的功能覆盖率为40%。

5.根据权利要求1所述的方法,其特征在于,所述基于所述请求数据生成测试数据包括:对所述请求数据进行脱敏处理,并为所述请求数据添加用于监控的标记。

6.根据权利要求1所述的方法,其特征在于,所述使用所述测试数据对所述第一服务、所述第二服务和所述第三服务进行测试包括:

7.根据权利要求1所述的方法,其特征在于,所述测试结果包括jmeter指标、机器指标和业务指标。

8.一种用于对比基线代码和对照代码的测试系统,其特征在于,包括:

9.一种用于对比基线代码和对照代码的测试设备,其特征在于,所述设备包括存储有计算机可执行指令的存储器和处理器,当所述指令被所述处理器执行时,使得所述设备实施根据权利要求1-7中任一项所述的用于对比基线代码和对照代码的测试方法。

10.一种计算机存储介质,其特征在于,在所述计算机存储介质上存储有指令,当所述指令在计算机上运行时,使得所述计算机执行根据权利要求1-7中任一项所述的用于对比基线代码和对照代码的测试方法。

11.一种计算机程序产品,其特征在于,包括计算机可执行指令,所述指令被处理器执行以实施根据权利要求1-7中任一项所述的用于对比基线代码和对照代码的测试方法。


技术总结
本发明涉及计算机技术领域,特别涉及用于对比基线代码和对照代码的测试方法、系统、设备、介质和计算机程序产品。方法包括:获取基线代码的线上服务接收到的请求数据;基于该请求数据生成测试数据;在容器中部署该基线代码的第一服务、该基线代码的第二服务和对照代码的第三服务;使用该测试数据对该第一服务、该第二服务和该第三服务进行测试;确定该第一服务和该第三服务的测试结果之间的对比信息、该第二服务和该第三服务的测试结果之间的对比信息;对比该第一服务和该第二服务的测试结果之间的差异,如果该差异在预定阈值以下,则确定本次测试结果可信,否则确定本次测试结果不可信。

技术研发人员:李先军,牛德利,翟友钧,孙蔚,蔺犇,张婷,陶荷梁
受保护的技术使用者:行吟信息科技(上海)有限公司
技术研发日:
技术公布日:2024/1/22
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1