CN113516333B - 一种基于精准化业务模型的性能测试方法和*** - Google Patents
一种基于精准化业务模型的性能测试方法和*** Download PDFInfo
- Publication number
- CN113516333B CN113516333B CN202110259269.1A CN202110259269A CN113516333B CN 113516333 B CN113516333 B CN 113516333B CN 202110259269 A CN202110259269 A CN 202110259269A CN 113516333 B CN113516333 B CN 113516333B
- Authority
- CN
- China
- Prior art keywords
- transaction
- model
- data
- minute
- daily
- 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.)
- Active
Links
- 238000011056 performance test Methods 0.000 title claims abstract description 43
- 238000000034 method Methods 0.000 title claims abstract description 14
- 238000004458 analytical method Methods 0.000 claims abstract description 49
- 238000012360 testing method Methods 0.000 claims abstract description 18
- 230000000007 visual effect Effects 0.000 claims abstract description 16
- 238000012216 screening Methods 0.000 claims abstract description 13
- 238000012545 processing Methods 0.000 claims abstract description 11
- 238000010276 construction Methods 0.000 claims abstract description 9
- 238000011156 evaluation Methods 0.000 claims abstract description 4
- 238000004519 manufacturing process Methods 0.000 claims description 22
- 238000004891 communication Methods 0.000 description 11
- 230000001174 ascending effect Effects 0.000 description 4
- 238000011161 development Methods 0.000 description 4
- 238000012800 visualization Methods 0.000 description 4
- 238000012795 verification Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 2
- 238000012423 maintenance Methods 0.000 description 2
- 238000005259 measurement Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 238000013522 software testing Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0639—Performance analysis of employees; Performance analysis of enterprise or organisation operations
- G06Q10/06393—Score-carding, benchmarking or key performance indicator [KPI] analysis
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/28—Databases characterised by their database models, e.g. relational or object models
- G06F16/284—Relational databases
- G06F16/285—Clustering or classification
- G06F16/287—Visualization; Browsing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/02—Marketing; Price estimation or determination; Fundraising
- G06Q30/0201—Market modelling; Market analysis; Collecting market data
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Theoretical Computer Science (AREA)
- Development Economics (AREA)
- Human Resources & Organizations (AREA)
- Physics & Mathematics (AREA)
- Strategic Management (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Entrepreneurship & Innovation (AREA)
- Finance (AREA)
- Economics (AREA)
- Accounting & Taxation (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- General Business, Economics & Management (AREA)
- Marketing (AREA)
- Game Theory and Decision Science (AREA)
- Quality & Reliability (AREA)
- Educational Administration (AREA)
- Computational Linguistics (AREA)
- Computer Hardware Design (AREA)
- Operations Research (AREA)
- Tourism & Hospitality (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明提供了一种基于精准化业务模型的性能测试方法及***,所述方法包括:步骤10、通过APM提供交易数据,通过定时跑批任务自动获取所述交易数据,按一定的格式存放到文件服务器指定目录路径下;步骤20、将所述交易数据存入数据库;步骤30、提取交易数据中相关***数据进行可视化展示;步骤40、通过人工筛选日交易高峰时段的建模区间,生成对应的业务模型或通过自动分析规则对交易数据进行分析得到对应的业务模型;步骤50、输出业务模型结果,根据该业务模型的最高交易量评估***的处理能力,依据该业务模型进行测试模型的精准化构建,执行对应的性能测试流程。本发明实现基于实际交易量的精准化业务模型的创建来提高性能测试效率。
Description
技术领域
本发明涉及软件测试领域,特别涉及一种基于精准化业务模型的性能测试方法和***。
背景技术
近年来,随着信息技术的飞速发展,软件产品使用者对软件处理实际业务场景的性能要求也越来越高,同时软件***业务模型呈现动态变化及实效性特殊化的现象越发明显。软件性能测试涉及的交易繁多、业务统计复杂且动态更新变化,性能测试时难以实现对业务模型化精准化定位,业务模型选取不够精准,或与生产交易模型不符,均将导致性能测试结果与生产实际场景偏差、测试结论参考价值受影响,并且容易误导对***处理能力的判断。
目前在性能测试实施过程中,针对被测***的性能测试业务模型,更多依赖项目组的经验判断及生产某一时段的历史数据来确定业务模型,业务模型分析不精准,无法贴合实际生产交易场景,给性能测试结果带来了一定的不确定性及风险。有鉴于此,本发明提供一种实现精准化业务模型的性能测试方法和***。
发明内容
本发明要解决的技术问题之一,在于提供一种基于精准化业务模型的性能测试方法,可通过实现精准化业务模型来提高性能测试的效率。
本发明要解决的技术问题之一是这样实现的:一种基于精准化业务模型的性能测试方法,包括:
步骤10、通过APM提供交易数据,通过定时跑批任务自动获取所述交易数据,按一定的格式存放到文件服务器指定目录路径下;
步骤20、将所述交易数据存入数据库;
步骤30、提取交易数据中相关***数据进行可视化展示;
步骤40、通过人工筛选日交易高峰时段的建模区间,生成对应的业务模型或通过自动分析规则对交易数据进行分析得到对应的业务模型;
步骤50、输出业务模型结果,根据该业务模型的最高交易量评估***的处理能力,依据该业务模型进行测试模型的精准化构建,执行对应的性能测试流程。
进一步的,所述步骤30具体为:提取交易数据中相关***数据,通过Grafana可视化图形展示工具将相关***数据进行展示,所述相关***数据包括日交易总量、每分钟交易量、日交易曲线图和日高峰时段交易占比。
进一步的,所述步骤40进一步包括:
步骤41、根据需要选择人工分析方式或自动分析方式得到相应的业务模型,若采用人工分析方式,则进入步骤42,否则,进入步骤43;
步骤42、依照展示出来的相关***数据,通过人工筛选分钟峰值时间点及日交易高峰时段的建模区间,分别得到分钟峰值业务模型和日业务模型数据;
步骤43、自动获取交易数据中的分钟峰值时间点及分钟峰值交易量,生成分钟峰值业务模型数据,并计算出平均分钟交易量最大的时段作为日建模区间,生成日业务模型数据;
步骤44、将所述分钟峰值业务模型数据与已有的分钟峰值业务模型数据进行匹配,若匹配成功,则更新已有的分钟峰值业务模型中的数据,否则,新建分钟峰值业务模型;同时将所述日业务模型数据与已有的日业务模型数据进行匹配,若匹配成功,则更新已有的日业务模型中的数据,否则,新建日业务模型。
进一步的,所述步骤43进一步包括:
步骤431、通过定时任务自动执行SQL脚本获取APM数据中的分钟峰值时间点及分钟峰值交易量,所述分钟峰值时间点的获取方式为:通过SQL脚本从存储APM生产数据的数据库中查询出全天24小时内各分钟时间点、各分钟交易量,并按分钟时间点分组、按分钟交易量降序排列,取分钟交易量最大的分钟时间点作为分钟峰值时间点,所述分钟峰值交易量的获取方式为:通过SQL脚本从存储APM生产数据的数据库中,查询出分钟峰值时间点的各交易总量;
步骤432、分析分钟峰值的交易类型、各交易量以及各交易量与分钟峰值各交易总量占比,并按交易类型分组、按交易量降序排列,生成分钟峰值业务模型数据;
步骤433、设置一分割线,根据所述分割线获取当日峰值区间集,并选取其中持续时间超过一预设分钟数的峰值区间得到长时区间集合;
步骤434、计算长时区间集合的中每一区间平均分钟交易量,取平均分钟交易量最大值的区间作为日建模区间;
步骤435、通过SQL分析所述出日建模区间内的交易类型、各交易量以及各交易量与日建模区间各交易总量占比,并按交易类型分组、按交易量降序排列,生成日业务模型数据。
进一步的,所述步骤44中的分钟峰值业务模型和日业务模型均采用如下方式进行各自的模型匹配:
设置交易个数差值占比阈值为X,交易类型数差值占比阈值为Z,各交易占比差值阈值为Y;
判断当前模型与已有模型的交易个数差值占比是否小于X,若是,则判断当前模型与已有模型的交易类型数差值占比是否小于Z,若是则判断当前模型与已有模型的各交易占比差值是否均小于Y,若是,则判断为相同模型,取交易量更大的一组模型数据作为更新后的模型数据,结束流程;否则,均判断为不同模型,新建模型。
进一步的,所述方法还包括:设置自动化新建模型及模型更新的自动提醒功能,在业务模型更新或新建时,通过对应的通讯手段输出更新或新建的业务模型报告,所述通讯手段包括通讯软件、电子邮件或公司OA***。
本发明要解决的技术问题之二,在于提供一种基于精准化业务模型的性能测试***,可通过实现精准化业务模型来提高性能测试的效率。
本发明要解决的技术问题之二是这样实现的:一种基于精准化业务模型的性能测试***,包括:
数据获取模块,用于通过APM提供交易数据,通过定时跑批任务自动获取所述交易数据,按一定的格式存放到文件服务器指定目录路径下;
数据入库模块,用于将所述交易数据存入数据库;
数据展示模块,用于提取交易数据中相关***数据进行可视化展示;
业务模型创建模块,用于通过人工筛选日交易高峰时段的建模区间,生成对应的业务模型或通过自动分析规则对交易数据进行分析得到对应的业务模型;以及
性能测试模块,用于输出业务模型结果,根据该业务模型的最高交易量评估***的处理能力,依据该业务模型进行测试模型的精准化构建,执行对应的性能测试流程。
进一步的,所述数据展示模块具体为:用于提取交易数据中相关***数据,通过Grafana可视化图形展示工具将相关***数据进行展示,所述相关***数据包括日交易总量、每分钟交易量、日交易曲线图和日高峰时段交易占比。
进一步的,所述业务模型创建模块进一步包括选择模块、人工模块、智能模块和匹配模块;
所述选择模块,用于根据需要选择人工分析方式或自动分析方式得到相应的业务模型,若采用人工分析方式,则执行人工模块,否则,执行智能模块;
所述人工模块,用于依照展示出来的相关***数据,通过人工筛选分钟峰值时间点及日交易高峰时段的建模区间,分别得到分钟峰值业务模型和日业务模型数据;
所述智能模块,用于自动获取交易数据中的分钟峰值时间点及分钟峰值交易量,生成分钟峰值业务模型数据,并计算出平均分钟交易量最大的时段作为日建模区间,生成日业务模型数据;
所述匹配模块,用于将所述分钟峰值业务模型数据与已有的分钟峰值业务模型数据进行匹配,若匹配成功,则更新已有的分钟峰值业务模型中的数据,否则,新建分钟峰值业务模型;同时将所述日业务模型数据与已有的日业务模型数据进行匹配,若匹配成功,则更新已有的日业务模型中的数据,否则,新建日业务模型。
进一步的,所述智能模块具体包括:
通过定时任务自动执行SQL脚本获取APM数据中的分钟峰值时间点及分钟峰值交易量,所述分钟峰值时间点的获取方式为:通过SQL脚本从存储APM生产数据的数据库中查询出全天24小时内各分钟时间点、各分钟交易量,并按分钟时间点分组、按分钟交易量降序排列,取分钟交易量最大的分钟时间点作为分钟峰值时间点,所述分钟峰值交易量的获取方式为:通过SQL脚本从存储APM生产数据的数据库中,查询出分钟峰值时间点的各交易总量;
分析分钟峰值的交易类型、各交易量以及各交易量与分钟峰值各交易总量占比,并按交易类型分组、按交易量降序排列,生成分钟峰值业务模型数据;
设置一分割线,根据所述分割线获取当日峰值区间集,并选取其中持续时间超过一预设分钟数的峰值区间得到长时区间集合;
计算长时区间集合的中每一区间平均分钟交易量,取平均分钟交易量最大值的区间作为日建模区间;
通过SQL分析所述出日建模区间内的交易类型、各交易量以及各交易量与日建模区间各交易总量占比,并按交易类型分组、按交易量降序排列,生成日业务模型数据。
进一步的,所述匹配模块中的分钟峰值业务模型和日业务模型均采用如下方式进行各自的模型匹配:
设置交易个数差值占比阈值为X,交易类型数差值占比阈值为Z,各交易占比差值阈值为Y;
判断当前模型与已有模型的交易个数差值占比是否小于X,若是,则判断当前模型与已有模型的交易类型数差值占比是否小于Z,若是则判断当前模型与已有模型的各交易占比差值是否均小于Y,若是,则判断为相同模型,取交易量更大的一组模型数据作为更新后的模型数据,结束流程;否则,均判断为不同模型,新建模型。
进一步的,所述***还包括通知模块,用于设置自动化新建模型及模型更新的自动提醒功能,在业务模型更新或新建时,通过对应的通讯手段输出更新或新建的业务模型报告,所述通讯手段包括通讯软件、电子邮件或公司OA***。
本发明的优点在于:
1、实现交易指标设置,可依据实际情况动态设置多因素多指标进行业务模型分析判断,实现精准业务模型在性能测试场景中的实际应用,为性能测试场景更加符合生产实际业务场景提供了真实可靠的依据
2、实现模型脚本自动分析,对当前监控***性能业务模型的动态更新,实现一次建模后持续更新模型、新建模型及日常对比功能,减少人工手动的繁琐操作,避免了人工对比的重复性和滞后性,实现自动更新操作的同时显著提高了业务模型精准化分析取模的效率,减少了业务模型分析的时间,方便了业务模型的管理。
3、定时更新输出业务模型报告,实现对业务***模型结果动态跟踪及自动提醒功能,减少性能测试工程师从运维人员、开发人员生产取数建模的沟通成本。
附图说明
下面参照附图结合实施例对本发明作进一步的说明。
图1为本发明一种基于精准化业务模型的性能测试方法的执行流程图。
图2为本发明方法一具体实施例中日峰值区间示意图。
图3为本发明中模型更新和新建部分的执行流程图。
图4为本发明一种基于精准化业务模型的性能测试***的结构示意图。
具体实施方式
如图1所示,本发明的一种基于精准化业务模型的性能测试方法,包括:
步骤10、通过APM提供交易数据,通过定时跑批任务自动获取所述交易数据,按一定的格式存放到文件服务器指定目录路径下,例如,所述交易数据的格式按***区分,通过“|”分隔各数据字段,并以指定格式文件存放;所述步骤10还包括:提供下载功能,供性能测试人员自动下载数据分析处理,并将取完的数据进行删除。
步骤20、将所述交易数据存入数据库,比如入库到MySQL数据库,为后续进行业务模型人工分析验证、精准化自动分析性能测试业务模型提供数据依据;
步骤30、提取交易数据中相关***数据进行可视化展示;以便实时便捷的为性能测试人员展示相关***数据;
步骤40、通过人工筛选日交易高峰时段的建模区间,生成对应的业务模型或通过自动分析规则对交易数据进行分析得到对应的业务模型;
步骤50、输出业务模型结果,根据该业务模型的最高交易量评估***的处理能力,依据该业务模型进行测试模型的精准化构建,执行对应的性能测试流程。该步骤输出的模型可以是一个或多个(根据分钟峰值业务模型和日峰值时段业务模型的实际情况及种类决定模型个数),并根据该模型的最高交易量评估***的处理能力,以便后续性能测试即可依据该业务模型完成测试模型的精准化构建。
较佳的,所述步骤30具体为:提取交易数据中相关***数据,通过Grafana可视化图形展示工具将相关***数据进行展示,所述相关***数据包括日交易总量、每分钟交易量、日交易曲线图和日高峰时段交易占比。可视化工具Grafana是一个跨平台的开源的度量分析和可视化工具,可以通过将采集的数据查询然后可视化的展示,进行APM数据的可视化展示,实现为人工分析业务模型提供可视化页面展示的功能,方便性能测试人员对应用***业务模型进行分析。
较佳的,所述步骤40进一步包括:
步骤41、根据需要选择人工分析方式或自动分析方式得到相应的业务模型,若采用人工分析方式,则进入步骤42,否则,进入步骤43;
步骤42、依照展示出来的相关***数据,通过人工筛选分钟峰值时间点及日交易高峰时段的建模区间,分别得到分钟峰值业务模型和日业务模型数据,展示分钟峰值时间点和高峰时段的交易类型及交易占比;
步骤43、自动获取交易数据中的分钟峰值时间点及分钟峰值交易量,生成分钟峰值业务模型数据,并计算出平均分钟交易量最大的时段作为日建模区间,生成日业务模型数据;此步骤依据人工分析业务模型经验,设计自动分析业务模型规则,依据APM实际交易量数据完成自动分析精准化业务模型;
步骤44、将所述分钟峰值业务模型数据与已有的分钟峰值业务模型数据进行匹配,若匹配成功,则更新已有的分钟峰值业务模型中的数据,否则,新建分钟峰值业务模型;同时将所述日业务模型数据与已有的日业务模型数据进行匹配,若匹配成功,则更新已有的日业务模型中的数据,否则,新建日业务模型。
较佳的,所述步骤43进一步包括:
步骤431、通过定时任务自动执行SQL脚本获取APM数据中的分钟峰值时间点及分钟峰值交易量,所述分钟峰值时间点的获取方式为:通过SQL脚本从存储APM生产数据的数据库中查询出全天24小时内各分钟时间点、各分钟交易量,并按分钟时间点分组、按分钟交易量降序排列,取分钟交易量最大的分钟时间点作为分钟峰值时间点,所述分钟峰值交易量的获取方式为:通过SQL脚本从存储APM生产数据的数据库中,查询出分钟峰值时间点的各交易总量;
步骤432、分析分钟峰值的交易类型、各交易量以及各交易量与分钟峰值各交易总量占比,并按交易类型分组、按交易量降序排列,生成分钟峰值业务模型数据;
步骤433、设置一分割线,根据所述分割线获取当日峰值区间集,并选取其中持续时间超过一预设分钟数的峰值区间得到长时区间集合;比如取分钟峰值交易量的80%(该值可根据需要调整)作为分割线,取峰值区间集(可获取1个或N区间)如图2所示的日峰值区间,截取当日超过分割线的上升区间(横坐标为分钟时间轴),上升区间(即峰值区间)横坐标截取规则为:按分钟时轴,取第N次(N>=1且为奇数)与第N+1次超过分钟峰值交易量80%的时间横坐标的区间集(如,06:20-09:05峰值区间、14:30-17:30峰值区间);选取持续时间超过一预设分钟M(M可配置)的区间形成性的集合可以剔除陡升或骤降峰值的短时区间;
步骤434、计算长时区间集合的中每一区间平均分钟交易量,取平均分钟交易量最大值的区间作为日建模区间;所述区间平均分钟交易量等于时间横坐标区间交易总量除以时间横坐标区间分钟数;
步骤435、通过SQL分析所述出日建模区间内的交易类型、各交易量以及各交易量与日建模区间各交易总量占比,并按交易类型分组、按交易量降序排列,生成日业务模型数据。
较佳的,如图3所示,所述步骤44中的分钟峰值业务模型和日业务模型均采用如下方式进行各自的模型匹配:
设置交易个数差值占比阈值为X,交易类型数差值占比阈值为Z,各交易占比差值阈值为Y;
判断当前模型与已有模型的交易个数差值占比是否小于X,若是,则判断当前模型与已有模型的交易类型数差值占比是否小于Z,若是则判断当前模型与已有模型的各交易占比差值是否均小于Y,若是,则判断为相同模型,取交易量更大的一组模型数据作为更新后的模型数据,结束流程;否则,均判断为不同模型,新建模型。
其中,所述交易个数差值占比为当前模型的交易个数与已有模型的交易个数的差值除以已有模型的交易个数,所述交易类型数差值占比为当前模型的交易类型数量与已有模型的交易类型数量的差值除以已有模型的交易类型数量,所述交易占比差值为当前模型的交易占比与已有模型的交易占比的差值。
通常情况下,一种模型对应的是一个业务场景,若为相同模型,即表示该业务场景已有对应的模型,只需更新已有模型中的部分数据即可,若为不同模型,则表示该业务场景无对应的模型,需要新建一个模型。通过上述匹配方式,将当前分钟峰值业务模型与已有的分钟峰值业务模型进行匹配,以及将当前日业务模型与已有的日业务模型进行匹配,可以确保不同业务场景下的模型数据的精确性。
较佳的,所述方法还包括:设置自动化新建模型及模型更新的自动提醒功能,在业务模型更新或新建时,通过对应的通讯手段输出更新或新建的业务模型报告,所述通讯手段包括通讯软件、电子邮件或公司OA***。通过更新已有模型和创建新模型的自动提醒功能,可以减少性能测试工程师从运维人员、开发人员生产取数建模的沟通成本。
如图4所示,本发明的一种基于精准化业务模型的性能测试***,包括:
数据获取模块,用于通过APM提供交易数据,通过定时跑批任务自动获取所述交易数据,按一定的格式存放到文件服务器指定目录路径下,例如,所述交易数据的格式按***区分,通过“|”分隔各数据字段,并以指定格式文件存放;所述数据获取模块还包括:提供下载功能,供性能测试人员自动下载数据分析处理,并将取完的数据进行删除;
数据入库模块,用于将所述交易数据存入数据库,比如入库到MySQL数据库,为后续进行业务模型人工分析验证、精准化自动分析性能测试业务模型提供数据依据;
数据展示模块,用于提取交易数据中相关***数据进行可视化展示;以便实时便捷的为性能测试人员展示相关***数据;
业务模型创建模块,用于通过人工筛选日交易高峰时段的建模区间,生成对应的业务模型或通过自动分析规则对交易数据进行分析得到对应的业务模型;以及
性能测试模块,用于输出业务模型结果,根据该业务模型的最高交易量评估***的处理能力,依据该业务模型进行测试模型的精准化构建,执行对应的性能测试流程。该步骤输出的模型可以是一个或多个(根据分钟峰值业务模型和日峰值时段业务模型的实际情况及种类决定模型个数),并根据该模型的最高交易量评估***的处理能力,以便后续性能测试即可依据该业务模型完成测试模型的精准化构建。
较佳的,所述数据展示模块具体为:用于提取交易数据中相关***数据,通过Grafana可视化图形展示工具将相关***数据进行展示,所述相关***数据包括日交易总量、每分钟交易量、日交易曲线图和日高峰时段交易占比。可视化工具Grafana是一个跨平台的开源的度量分析和可视化工具,可以通过将采集的数据查询然后可视化的展示,进行APM数据的可视化展示,实现为人工分析业务模型提供可视化页面展示的功能,方便性能测试人员对应用***业务模型进行分析。
较佳的,所述业务模型创建模块进一步包括选择模块、人工模块、智能模块和匹配模块;
所述选择模块,用于根据需要选择人工分析方式或自动分析方式得到相应的业务模型,若采用人工分析方式,则执行人工模块,否则,执行智能模块;
所述人工模块,用于依照展示出来的相关***数据,通过人工筛选分钟峰值时间点及日交易高峰时段的建模区间,分别得到分钟峰值业务模型和日业务模型数据,展示分钟峰值时间点和高峰时段的交易类型及交易占比;
所述智能模块,用于自动获取交易数据中的分钟峰值时间点及分钟峰值交易量,生成分钟峰值业务模型数据,并计算出平均分钟交易量最大的时段作为日建模区间,生成日业务模型数据;此步骤依据人工分析业务模型经验,设计自动分析业务模型规则,依据APM实际交易量数据完成自动分析精准化业务模型;
所述匹配模块,用于将所述分钟峰值业务模型数据与已有的分钟峰值业务模型数据进行匹配,若匹配成功,则更新已有的分钟峰值业务模型中的数据,否则,新建分钟峰值业务模型;同时将所述日业务模型数据与已有的日业务模型数据进行匹配,若匹配成功,则更新已有的日业务模型中的数据,否则,新建日业务模型。
较佳的,所述智能模块具体包括:
通过定时任务自动执行SQL脚本获取APM数据中的分钟峰值时间点及分钟峰值交易量,所述分钟峰值时间点的获取方式为:通过SQL脚本从存储APM生产数据的数据库中查询出全天24小时内各分钟时间点、各分钟交易量,并按分钟时间点分组、按分钟交易量降序排列,取分钟交易量最大的分钟时间点作为分钟峰值时间点,所述分钟峰值交易量的获取方式为:通过SQL脚本从存储APM生产数据的数据库中,查询出分钟峰值时间点的各交易总量;
分析分钟峰值的交易类型、各交易量以及各交易量与分钟峰值各交易总量占比,并按交易类型分组、按交易量降序排列,生成分钟峰值业务模型数据;
设置一分割线,根据所述分割线获取当日峰值区间集,并选取其中持续时间超过一预设分钟数的峰值区间得到长时区间集合;比如取分钟峰值交易量的80%(该值可根据需要调整)作为分割线,取峰值区间集(可获取1个或N区间)如图2所示的日峰值区间,截取当日超过分割线的上升区间(横坐标为分钟时间轴),上升区间(即峰值区间)横坐标截取规则为:按分钟时轴,取第N次(N>=1且为奇数)与第N+1次超过分钟峰值交易量80%的时间横坐标的区间集(如,06:20-09:05峰值区间、14:30-17:30峰值区间);选取持续时间超过一预设分钟M(M可配置)的区间形成性的集合可以剔除陡升或骤降峰值的短时区间;
计算长时区间集合的中每一区间平均分钟交易量,取平均分钟交易量最大值的区间作为日建模区间;所述区间平均分钟交易量等于时间横坐标区间交易总量除以时间横坐标区间分钟数;
通过SQL分析所述出日建模区间内的交易类型、各交易量以及各交易量与日建模区间各交易总量占比,并按交易类型分组、按交易量降序排列,生成日业务模型数据。
较佳的,所述匹配模块中的分钟峰值业务模型和日业务模型均采用如下方式进行各自的模型匹配:
设置交易个数差值占比阈值为X,交易类型数差值占比阈值为Z,各交易占比差值阈值为Y;
判断当前模型与已有模型的交易个数差值占比是否小于X,若是,则判断当前模型与已有模型的交易类型数差值占比是否小于Z,若是则判断当前模型与已有模型的各交易占比差值是否均小于Y,若是,则判断为相同模型,取交易量更大的一组模型数据作为更新后的模型数据,结束流程;否则,均判断为不同模型,新建模型。
其中,所述交易个数差值占比为当前模型的交易个数与已有模型的交易个数的差值除以已有模型的交易个数,所述交易类型数差值占比为当前模型的交易类型数量与已有模型的交易类型数量的差值除以已有模型的交易类型数量,所述交易占比差值为当前模型的交易占比与已有模型的交易占比的差值。
通常情况下,一种模型对应的是一个业务场景,若为相同模型,即表示该业务场景已有对应的模型,只需更新已有模型中的部分数据即可,若为不同模型,则表示该业务场景无对应的模型,需要新建一个模型。通过上述匹配方式,将当前分钟峰值业务模型与已有的分钟峰值业务模型进行匹配,以及将当前日业务模型与已有的日业务模型进行匹配,可以确保不同业务场景下的模型数据的精确性。
较佳的,所述***还包括通知模块,用于设置自动化新建模型及模型更新的自动提醒功能,在业务模型更新或新建时,通过对应的通讯手段输出更新或新建的业务模型报告,所述通讯手段包括通讯软件、电子邮件或公司OA***。通过更新已有模型和创建新模型的自动提醒功能,可以减少性能测试工程师从运维人员、开发人员生产取数建模的沟通成本。
本发明通过构建一个从相关交易业务量统计—业务量分析—业务交易量峰值精准定位—人工辅助验证分析—性能模型自动分析对比—业务模型建模—动态跟踪提醒及模型更新的性能测试精准化业务模型,形成不断更新性能测试业务模型的常态化体系,从业务分析到模型动态更新及自动化对比,实现了生产多业务模型精准化匹配,丰富了业务模型的类型,为性能测试场景更加符合生产实际业务场景提供真实可靠的依据,提高性能测试整体效率。
虽然以上描述了本发明的具体实施方式,但是熟悉本技术领域的技术人员应当理解,我们所描述的具体的实施例只是说明性的,而不是用于对本发明的范围的限定,熟悉本领域的技术人员在依照本发明的精神所作的等效的修饰以及变化,都应当涵盖在本发明的权利要求所保护的范围内。
Claims (6)
1.一种基于精准化业务模型的性能测试方法,其特征在于:包括:
步骤10、通过APM提供交易数据,通过定时跑批任务自动获取所述交易数据,按一定的格式存放到文件服务器指定目录路径下;
步骤20、将所述交易数据存入数据库;
步骤30、提取交易数据中相关***数据进行可视化展示;
步骤40、通过人工筛选日交易高峰时段的建模区间,生成对应的业务模型或通过自动分析规则对交易数据进行分析得到对应的业务模型;
步骤50、输出业务模型结果,根据该业务模型的最高交易量评估***的处理能力,依据该业务模型进行测试模型的精准化构建,执行对应的性能测试流程;
所述步骤40进一步包括:
步骤41、根据需要选择人工分析方式或自动分析方式得到相应的业务模型,若采用人工分析方式,则进入步骤42,否则,进入步骤43;
步骤42、依照展示出来的相关***数据,通过人工筛选分钟峰值时间点及日交易高峰时段的建模区间,分别得到分钟峰值业务模型和日业务模型数据;
步骤43、自动获取交易数据中的分钟峰值时间点及分钟峰值交易量,生成分钟峰值业务模型数据,并计算出平均分钟交易量最大的时段作为日建模区间,生成日业务模型数据;
步骤44、将所述分钟峰值业务模型数据与已有的分钟峰值业务模型数据进行匹配,若匹配成功,则更新已有的分钟峰值业务模型中的数据,否则,新建分钟峰值业务模型;同时将所述日业务模型数据与已有的日业务模型数据进行匹配,若匹配成功,则更新已有的日业务模型中的数据,否则,新建日业务模型;所述步骤44中的分钟峰值业务模型和日业务模型均采用如下方式进行各自的模型匹配:
设置交易个数差值占比阈值为X,交易类型数差值占比阈值为Z,各交易占比差值阈值为Y;
判断当前模型与已有模型的交易个数差值占比是否小于X,若是,则判断当前模型与已有模型的交易类型数差值占比是否小于Z,若是则判断当前模型与已有模型的各交易占比差值是否均小于Y,若是,则判断为相同模型,取交易量更大的一组模型数据作为更新后的模型数据,结束流程;否则,均判断为不同模型,新建模型。
2.如权利要求1所述的一种基于精准化业务模型的性能测试方法,其特征在于:所述步骤30具体为:提取交易数据中相关***数据,通过Grafana可视化图形展示工具将相关***数据进行展示,所述相关***数据包括日交易总量、每分钟交易量、日交易曲线图和日高峰时段交易占比。
3.如权利要求1所述的一种基于精准化业务模型的性能测试方法,其特征在于:所述步骤43进一步包括:
步骤431、通过定时任务自动执行SQL脚本获取APM数据中的分钟峰值时间点及分钟峰值交易量,所述分钟峰值时间点的获取方式为:通过SQL脚本从存储APM生产数据的数据库中查询出全天24小时内各分钟时间点、各分钟交易量,并按分钟时间点分组、按分钟交易量降序排列,取分钟交易量最大的分钟时间点作为分钟峰值时间点,所述分钟峰值交易量的获取方式为:通过SQL脚本从存储APM生产数据的数据库中,查询出分钟峰值时间点的各交易总量;
步骤432、分析分钟峰值的交易类型、各交易量以及各交易量与分钟峰值各交易总量占比,并按交易类型分组、按交易量降序排列,生成分钟峰值业务模型数据;
步骤433、设置一分割线,根据所述分割线获取当日峰值区间集,并选取其中持续时间超过一预设分钟数的峰值区间得到长时区间集合;
步骤434、计算长时区间集合的中每一区间平均分钟交易量,取平均分钟交易量最大值的区间作为日建模区间;
步骤435、通过SQL分析出所述日建模区间内的交易类型、各交易量以及各交易量与日建模区间各交易总量占比,并按交易类型分组、按交易量降序排列,生成日业务模型数据。
4.一种基于精准化业务模型的性能测试***,其特征在于:包括:
数据获取模块,用于通过APM提供交易数据,通过定时跑批任务自动获取所述交易数据,按一定的格式存放到文件服务器指定目录路径下;
数据入库模块,用于将所述交易数据存入数据库;
数据展示模块,用于提取交易数据中相关***数据进行可视化展示;
业务模型创建模块,用于通过人工筛选日交易高峰时段的建模区间,生成对应的业务模型或通过自动分析规则对交易数据进行分析得到对应的业务模型;以及
性能测试模块,用于输出业务模型结果,根据该业务模型的最高交易量评估***的处理能力,依据该业务模型进行测试模型的精准化构建,执行对应的性能测试流程;
所述业务模型创建模块进一步包括选择模块、人工模块、智能模块和匹配模块;
所述选择模块,用于根据需要选择人工分析方式或自动分析方式得到相应的业务模型,若采用人工分析方式,则执行人工模块,否则,执行智能模块;
所述人工模块,用于依照展示出来的相关***数据,通过人工筛选分钟峰值时间点及日交易高峰时段的建模区间,分别得到分钟峰值业务模型和日业务模型数据;
所述智能模块,用于自动获取交易数据中的分钟峰值时间点及分钟峰值交易量,生成分钟峰值业务模型数据,并计算出平均分钟交易量最大的时段作为日建模区间,生成日业务模型数据;
所述匹配模块,用于将所述分钟峰值业务模型数据与已有的分钟峰值业务模型数据进行匹配,若匹配成功,则更新已有的分钟峰值业务模型中的数据,否则,新建分钟峰值业务模型;同时将所述日业务模型数据与已有的日业务模型数据进行匹配,若匹配成功,则更新已有的日业务模型中的数据,否则,新建日业务模型;所述匹配模块中的分钟峰值业务模型和日业务模型均采用如下方式进行各自的模型匹配:
设置交易个数差值占比阈值为X,交易类型数差值占比阈值为Z,各交易占比差值阈值为Y;
判断当前模型与已有模型的交易个数差值占比是否小于X,若是,则判断当前模型与已有模型的交易类型数差值占比是否小于Z,若是则判断当前模型与已有模型的各交易占比差值是否均小于Y,若是,则判断为相同模型,取交易量更大的一组模型数据作为更新后的模型数据,结束流程;否则,均判断为不同模型,新建模型。
5.如权利要求4所述的一种基于精准化业务模型的性能测试***,其特征在于:所述数据展示模块具体为:用于提取交易数据中相关***数据,通过Grafana可视化图形展示工具将相关***数据进行展示,所述相关***数据包括日交易总量、每分钟交易量、日交易曲线图和日高峰时段交易占比。
6.如权利要求4所述的一种基于精准化业务模型的性能测试***,其特征在于:所述智能模块具体包括:
通过定时任务自动执行SQL脚本获取APM数据中的分钟峰值时间点及分钟峰值交易量,所述分钟峰值时间点的获取方式为:通过SQL脚本从存储APM生产数据的数据库中查询出全天24小时内各分钟时间点、各分钟交易量,并按分钟时间点分组、按分钟交易量降序排列,取分钟交易量最大的分钟时间点作为分钟峰值时间点,所述分钟峰值交易量的获取方式为:通过SQL脚本从存储APM生产数据的数据库中,查询出分钟峰值时间点的各交易总量;
分析分钟峰值的交易类型、各交易量以及各交易量与分钟峰值各交易总量占比,并按交易类型分组、按交易量降序排列,生成分钟峰值业务模型数据;
设置一分割线,根据所述分割线获取当日峰值区间集,并选取其中持续时间超过一预设分钟数的峰值区间得到长时区间集合;
计算长时区间集合的中每一区间平均分钟交易量,取平均分钟交易量最大值的区间作为日建模区间;
通过SQL分析出所述日建模区间内的交易类型、各交易量以及各交易量与日建模区间各交易总量占比,并按交易类型分组、按交易量降序排列,生成日业务模型数据。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110259269.1A CN113516333B (zh) | 2021-03-10 | 2021-03-10 | 一种基于精准化业务模型的性能测试方法和*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110259269.1A CN113516333B (zh) | 2021-03-10 | 2021-03-10 | 一种基于精准化业务模型的性能测试方法和*** |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113516333A CN113516333A (zh) | 2021-10-19 |
CN113516333B true CN113516333B (zh) | 2023-11-14 |
Family
ID=78061481
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110259269.1A Active CN113516333B (zh) | 2021-03-10 | 2021-03-10 | 一种基于精准化业务模型的性能测试方法和*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113516333B (zh) |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6311144B1 (en) * | 1998-05-13 | 2001-10-30 | Nabil A. Abu El Ata | Method and apparatus for designing and analyzing information systems using multi-layer mathematical models |
US7290048B1 (en) * | 2002-03-29 | 2007-10-30 | Hyperformix, Inc. | Method of semi-automatic data collection, data analysis, and model generation for the performance analysis of enterprise applications |
WO2017133615A1 (zh) * | 2016-02-03 | 2017-08-10 | 腾讯科技(深圳)有限公司 | 一种业务参数获取方法及装置 |
CN108537544A (zh) * | 2018-04-04 | 2018-09-14 | 中南大学 | 一种交易***实时监控方法及其监控*** |
CN110147305A (zh) * | 2019-04-19 | 2019-08-20 | 平安普惠企业管理有限公司 | 一种基于大数据的测试模型构建方法及*** |
CN111488272A (zh) * | 2020-03-11 | 2020-08-04 | 苏州浪潮智能科技有限公司 | 一种复杂交易文件的自动化测试方法及装置 |
CN111737125A (zh) * | 2020-06-19 | 2020-10-02 | 中国工商银行股份有限公司 | 量化交易的行情数据的生成方法、装置和服务器 |
CN111813661A (zh) * | 2020-06-15 | 2020-10-23 | 福建省农村信用社联合社 | 一种全局业务数据驱动自动测试方法、装置、设备和介质 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040236673A1 (en) * | 2000-10-17 | 2004-11-25 | Eder Jeff Scott | Collaborative risk transfer system |
US7818150B2 (en) * | 2005-03-11 | 2010-10-19 | Hyperformix, Inc. | Method for building enterprise scalability models from load test and trace test data |
US20160055427A1 (en) * | 2014-10-15 | 2016-02-25 | Brighterion, Inc. | Method for providing data science, artificial intelligence and machine learning as-a-service |
US10394583B2 (en) * | 2016-03-31 | 2019-08-27 | Ca, Inc. | Automated model generation for a software system |
-
2021
- 2021-03-10 CN CN202110259269.1A patent/CN113516333B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6311144B1 (en) * | 1998-05-13 | 2001-10-30 | Nabil A. Abu El Ata | Method and apparatus for designing and analyzing information systems using multi-layer mathematical models |
US7290048B1 (en) * | 2002-03-29 | 2007-10-30 | Hyperformix, Inc. | Method of semi-automatic data collection, data analysis, and model generation for the performance analysis of enterprise applications |
WO2017133615A1 (zh) * | 2016-02-03 | 2017-08-10 | 腾讯科技(深圳)有限公司 | 一种业务参数获取方法及装置 |
CN108537544A (zh) * | 2018-04-04 | 2018-09-14 | 中南大学 | 一种交易***实时监控方法及其监控*** |
CN110147305A (zh) * | 2019-04-19 | 2019-08-20 | 平安普惠企业管理有限公司 | 一种基于大数据的测试模型构建方法及*** |
CN111488272A (zh) * | 2020-03-11 | 2020-08-04 | 苏州浪潮智能科技有限公司 | 一种复杂交易文件的自动化测试方法及装置 |
CN111813661A (zh) * | 2020-06-15 | 2020-10-23 | 福建省农村信用社联合社 | 一种全局业务数据驱动自动测试方法、装置、设备和介质 |
CN111737125A (zh) * | 2020-06-19 | 2020-10-02 | 中国工商银行股份有限公司 | 量化交易的行情数据的生成方法、装置和服务器 |
Non-Patent Citations (2)
Title |
---|
生产原型交易回放测试设计及实践;曾立环;;中国金融电脑(第05期);第39-48页 * |
金融交易***测试质量改进与度量研究;李宁;中国优秀硕士学位论文(第1期);第I138-766页 * |
Also Published As
Publication number | Publication date |
---|---|
CN113516333A (zh) | 2021-10-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108537544B (zh) | 一种交易***实时监控方法及其监控*** | |
CN109982361B (zh) | 信号干扰分析方法、装置、设备及介质 | |
CN110995524B (zh) | 流量数据监控方法、装置、电子设备和计算机可读介质 | |
CN111241168A (zh) | 一种实时在线微观交通仿真方法及*** | |
CN111291216B (zh) | 一种基于人脸结构化数据的落脚点分析方法和*** | |
CN114168906A (zh) | 一种基于云计算的测绘地理信息数据采集*** | |
CN111476441A (zh) | 一种电动汽车充电设备负荷预测方法及相关装置 | |
CN111222790A (zh) | 风险事件发生概率的预测方法、装置、设备及存储介质 | |
CN111737646A (zh) | 广告推广的效果评估数据处理方法、***和存储介质 | |
CN116305797B (zh) | 一种基于bim和多源质量信息融合的施工风险评估*** | |
CN111190817B (zh) | 软件缺陷的处理方法及装置 | |
CN115097796A (zh) | 一种质量控制***与模拟大数据和校正aql值的方法 | |
CN113516333B (zh) | 一种基于精准化业务模型的性能测试方法和*** | |
CN114066089A (zh) | 批量作业运行耗时区间确定方法及装置 | |
CN115759885B (zh) | 一种基于分布式物资供应下的物资抽检方法和装置 | |
CN115617670A (zh) | 软件测试管理方法、存储介质及*** | |
CN115344495A (zh) | 批量任务测试的数据分析方法、装置、计算机设备及介质 | |
CN112434750B (zh) | 基于卷积神经网络的大坝监测数据发展模式识别方法 | |
CN113268525A (zh) | 一种自动优化常模的认知评估方法及*** | |
CN116910324B (zh) | 一种实验大数据的可视化报告配置方法及*** | |
CN111752991B (zh) | 一种表计数据统计方法、装置和获取表计统计数据方法 | |
CN114363825B (zh) | 一种基于mr常驻地的建筑物属性识别方法及*** | |
CN116390147B (zh) | 一种无线网络质量的评估方法、装置和电子设备 | |
CN114970741B (zh) | 数据处理方法、装置及电子设备 | |
CN116303715A (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 |