性能测试方法及装置、电子设备和计算机可读存储介质与流程

文档序号:34824313发布日期:2023-07-20 06:17阅读:51来源:国知局
性能测试方法及装置、电子设备和计算机可读存储介质与流程

本公开涉及大数据、人工智能、金融具体地涉及一种性能测试方法、装置、设备、介质和程序产品。


背景技术:

1、近年来,随着系统架构从单体应用向分布式系统发展,开发效率和系统可扩展性逐步提高,但迁移到分布式平台之后,交易链路变长,交易复杂性呈爆炸性增长。在这样复杂的系统下,系统的性能需要进行充分的测试和评估。目前各大公司通常的做法由架构师或开发人员根据当期改造点、交易生产上的并发量等内容进行评估决定是否要做性能测试。

2、在实现本公开构思的过程中,发明人发现相关技术中至少存在如下问题:由架构师或开发人员进行评估的做法,一方面依赖于个人能力和经验,且识别效率较低;另一方面,这种方式可能会出现评估遗漏,导致该测试的内容未测试;或者评估出来要做的内容太多,却无法安排出轻重缓急顺序,把有限的精力投放到最需要做性能测试的交易系统上,不仅延长了测试周期、降低了测试效率,而且可能会遗漏重要待测交易,测试效果不理想。


技术实现思路

1、鉴于上述问题,本公开提供了一种性能测试方法、装置、设备、介质和程序产品。

2、本公开的一个方面,提供了一种性能测试方法,包括:

3、从数据库中读取与m个待测交易有关的m组参考数据,其中各组参考数据包括与各待测交易关联的生产运行数据、版本改造数据、应用投产策略数据、预设影响因子,以及包括各测试任务所涉及的n种测试对象的数量,其中测试任务用于对待测交易执行性能测试,m为大于等于1的正整数,n为大于等于1的正整数;

4、根据生产运行数据、版本改造数据、应用投产策略数据、预设影响因子,计算得到用于表征测试任务的重要程度的第一分值;

5、根据各测试任务所涉及的n种测试对象的数量以及执行单个测试对象所消耗的预计时长,计算得到用于表征执行测试任务所需时间花销程度的第二分值;

6、根据第一分值和第二分值,确定各个测试任务的优先级;

7、基于m个测试任务的优先级,调用m个测试任务中的l个目标测试任务完成对l个目标待测交易的性能测试,l为大于等于1的正整数。

8、根据本公开的实施例,其中,根据生产运行数据、版本改造数据、应用投产策略数据、预设影响因子,计算得到用于表征测试任务的重要程度的第一分值包括:

9、根据版本改造数据、应用投产策略数据、预设影响因子,计算得到与各个待测交易有关的研发重要度得分;

10、根据生产运行数据和预设影响因子,计算得到与各个待测交易有关的运维重要度得分;

11、计算研发重要度得分和运维重要度得分的和,得到第一分值。

12、根据本公开的实施例,其中:

13、版本改造数据包括与多个改造关联因素对应的权重赋值和结果赋值,其中,多个改造关联因素至少包括:版本改造中是否涉及表索引、版本改造中是否涉及数据迁移、版本改造中是否涉及新接入功能场景、版本改造中涉及的程序是否属于核心程序;

14、应用投产策略数据包括待测交易对应的目标投产策略,目标投产策略包括以下之一:按地区切流策略、批量上限策略、活动切流策略、全量切流策略;

15、预设影响因子至少包括应用重要程度影响因子、对客影响因子。

16、根据本公开的实施例,其中,根据版本改造数据、应用投产策略数据、预设影响因子,计算得到与各个待测交易有关的研发重要度得分包括:

17、基于与多个改造关联因素对应的权重赋值和结果赋值,计算得到版本改造重要度得分;

18、基于预设策略得分规则,确定与目标投产策略对应的目标策略分值;

19、基于版本改造重要度得分、目标策略分值、重要程度影响因子、对客影响因子,计算得到与各个待测交易有关的研发重要度得分。

20、根据本公开的实施例,其中,根据生产运行数据和预设影响因子,计算得到与各个待测交易有关的运维重要度得分包括:

21、对与各个待测交易有关的生产运行数据进行数据处理,生成与各个待测交易有关的运维基础得分;

22、根据运维基础得分和预设影响因子,计算得到与各个待测交易有关的运维重要度得分。

23、根据本公开的实施例,其中:

24、生产运行数据包括交易运行数据、数据库运行数据、容器运行数据;

25、对与各个待测交易有关的生产运行数据进行数据处理,生成与各个待测交易有关的运维基础得分包括:

26、将交易运行数据输入第一随机森林,输出用于表征各个待测交易是否存在交易性能风险的第一风险结果;

27、将数据库运行数据输入第二随机森林,输出用于表征各个待测交易是否存在数据库性能风险的第二风险结果;

28、将容器运行数据输入第三随机森林,输出用于表征各个待测交易是否存在容器性能风险的第三风险结果;

29、根据第一风险结果、第二风险结果、第三风险结果,以及与各个待测交易有关的预设生产运维系数,生成与各个待测交易有关的运维基础得分。

30、根据本公开的实施例,其中:

31、第一随机森林包括多棵交易性能风险决策树,交易性能风险决策树是利用历史交易运行数据训练得到的;

32、第二随机森林包括多棵数据库性能风险决策树,数据库性能风险决策树是利用历史数据库运行数据训练得到的;

33、第三随机森林包括多棵容器性能风险决策树,容器性能风险决策树是利用历史容器运行数据训练得到的;

34、交易性能风险决策树、或数据库性能风险决策树、或容器性能风险决策树包括:根节点以及至少一层子节点层,其中,每层子节点层包括至少一个子节点,子节点的节点类型包括叶子节点和/或非叶子节点,根节点通过决策条件与至少一层子节点层关联,决策条件由决策属性以及属性决策值组成,其中

35、与交易性能风险决策树有关的决策属性至少包括:交易平均响应时间、交易最大响应时间、交易成功率、交易每秒调用量、交易成功笔数、交易并发用户数;

36、与数据库性能风险决策树有关的决策属性至少包括:数据库连接数、数据库的cpu利用率、数据库内存利用率、数据库磁盘读写速率、数据库磁盘空间利用率、数据库网络传输速率;

37、与容器性能风险决策树有关的决策属性至少包括:容器cpu利用率、容器内存利用率、容器磁盘读写速率、容器磁盘空间利用率、容器网络传输速率、容器虚拟机内存、容器虚拟机线程数量。

38、根据本公开的实施例,其中:

39、各测试任务所涉及的至少一种测试对象至少包括:与待测交易有关的应用、与待测交易有关的服务、与待测交易有关的数据表。

40、本公开的另一个方面提供了一种性能测试装置,包括:

41、读取模块,用于从数据库中读取与m个待测交易有关的m组参考数据,其中各组参考数据包括与各待测交易关联的生产运行数据、版本改造数据、应用投产策略数据、预设影响因子,以及包括各测试任务所涉及的n种测试对象的数量,其中测试任务用于对待测交易执行性能测试,m为大于等于1的正整数,n为大于等于1的正整数;

42、第一计算模块,用于根据生产运行数据、版本改造数据、应用投产策略数据、预设影响因子,计算得到用于表征测试任务的重要程度的第一分值;

43、第二计算模块,用于根据各测试任务所涉及的n种测试对象的数量以及执行单个测试对象所消耗的预计时长,计算得到用于表征执行测试任务所需时间花销程度的第二分值;

44、确定模块,用于根据第一分值和第二分值,确定各个测试任务的优先级;

45、测试模块,用于基于m个测试任务的优先级,调用m个测试任务中的l个目标测试任务完成对l个目标待测交易的性能测试,l为大于等于1的正整数。

46、本公开的另一个方面提供了一种电子设备,包括:一个或多个处理器;存储器,用于存储一个或多个程序,其中,当所述一个或多个程序被所述一个或多个处理器执行时,使得一个或多个处理器执行上述性能测试方法。

47、本公开的另一个方面还提供了一种计算机可读存储介质,其上存储有可执行指令,该指令被处理器执行时使处理器执行上述性能测试方法。

48、本公开的另一个方面还提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述性能测试方法。

49、根据本公开的实施例,为了实现更精准地识别性能测试需求,更有效的实施性能测试,上述性能测试方法通过对待测交易有关的参考数据进行处理,得到性能测试优先级,并按照优先级执行性能测试。一方面实现了性能测试的自动化执行,解放了人力,提高了测试效率。另一方面,通过确定的任务的优先级,可自动化按照优先程度安排出任务的轻重缓急顺序,把有限的精力投入到最需要做性能测试的任务上,实现精准有效的性能测试,且不会出现评估遗漏,避免了应当测试的任务未测试的情况发生。

50、根据本公开的实施例,测试任务的优先级根据第一分值和第二分值得出,是考虑到任务的重要程度还兼顾考虑到任务消耗时间长短做出的综合衡量,在保证测试精准性的前提下整体缩短了测试的周期,提高了性能测试的合理性和可行性。根据本公开的实施例,进一步地,生产运行情况、版本改造情况、应用投产策略等对待测交易系统性能存在影响,对系统性能影响越大,与待测交易有关的测试任务的重要程度越高。考虑到某些影响因素可能对交易系统性能存在一定程度的影响,引入预设影响因子(影响系数),通过预设的影响系数大小来表征这些影响因素可能对系统性能造成的影响程度。如此,通过生产运行数据、版本改造数据、应用投产策略数据、预设影响因子,计算得到的第一分值考虑到了多种客观影响因素对测试任务的重要程度的影响,进一步提高了任务测试的精准性和合理性,测试效果更加理想。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1