一种工业软件大数据量的性能测试方法和系统技术方案

技术编号:35561179 阅读:27 留言:0更新日期:2022-11-12 15:44
本发明专利技术公开了一种工业软件大数据量的性能测试方法和系统,其中,性能测试方法包括部署API请求抓取工具;模拟用户访问待测系统,对API请求信息进行收集生成性能测试脚本;部署脚本管理中心工具用于导入测试用例,对导入的测试用例进行解析,将解析的内容存储至用例维护表,通过数据测试脚本连接数据库;部署测试管理中心工具,包括用于发送消息任务至脚本管理中心的消息管理中心模块,发送大数据量的性能测试的任务;性能测试脚本调用数据测试脚本,数据测试脚本基于测试用例维护表的状态标志向数据库插入测试数据,生成的测试数据用于大数据量的性能测试;针对工业软件不同的业务场景,快速创建大数据量的测试数据。快速创建大数据量的测试数据。快速创建大数据量的测试数据。

【技术实现步骤摘要】
一种工业软件大数据量的性能测试方法和系统


[0001]本专利技术涉及一种工业软件性能测试技术应用领域,具体涉及一种工业软件大数据量的性能测试方法和系统。

技术介绍

[0002]传统的性能测试,业务场景单一,需要在一次性能测试结束后才能获得性能测试结果,消息滞后,时间与资源利用率低下。专利技术专利CN201010613464.1提出了《一种性能测试系统及方法》,该系统可以实时监测被测服务器的性能数据,当被测服务器CPU使用率未达到设定阈值时,增加并发用户数;当被测服务器CPU使用率超出设定阈值时,停止性能测试。该性能测试方法实现了一定程度的无人值守,但是仍有一定的缺陷:
[0003]1、该系统仍针对单一性能测试场景,当业务系统庞大,需要测试的性能场景较多时,仍需要测试人员的介入切换场景,而切换业务场景需要创造大量的sql数据,人为创造数据将花费大量的时间。
[0004]2、该系统仅实时监测被测服务器资源,判断条件单一,没有获取其他关键性能结果并分析,可能造成后续性能测试无效,浪费了后续性能测试的时间与资源。
[0005]3、当被测服务器CPU使用率超过设定阈值时,停止当前测试,不能及时通知用户,问题排查与后续测试仍存在时间差。

技术实现思路

[0006]本专利技术为了克服以上技术的不足,提供了一种工业软件大数据量的性能测试方法和系统,针对工业软件不同的业务场景,快速创建大数据量的测试数据,从而提高人工创建sql语句的效率。同时实时监控测试结果和被测服务器硬件资源,测试过程中不满足预设性能指标和服务器资源时,及时给予测试人员通知预警。
[0007]本专利技术的第一个方面提出了一种工业软件大数据量的性能测试方法,包括:部署API请求抓取工具,所述API请求抓取工具用于收集API请求信息;
[0008]基于预设性能测试场景和性能测试要求,模拟若干用户通过浏览器访问对应的业务功能,基于API请求抓取工具对访问产生的API请求信息进行收集,从而生成性能测试脚本;部署脚本管理中心工具,所述脚本管理中心工具至少包括用于导入多个测试用例的测试用例维护模块、用于导入性能测试脚本的功能模块和对应不同测试场景的测试用例的数据测试脚本,所述脚本管理中心通过测试用例模块对导入的测试用例进行解析,将解析的内容存储到用例维护表中,其中,数据测试脚本中至少包括连接数据库所需的脚本;部署测试管理中心工具,所述测试管理中心至少包括消息管理中心模块,所述消息管理中心模块用于发送消息任务至脚本管理中心,开启大数据量的性能测试;性能测试脚本调用数据测试脚本,数据测试脚本基于对应测试用例的测试用例维护表的状态标志向数据库插入预设数据量的模拟数据,生成的模拟数据用于大数据量的性能测试;消息管理中心模块接收到数据测试脚本的执行结果,开始大数据量的性能测试任务;开启测试结果收集并分析测试
结果。
[0009]进一步的,所述性能测试脚本调用数据测试脚本,数据测试脚本基于测试用例维护模块的状态标志向数据库插入预设数据量的模拟数据,具体包括:所述脚本管理中心工具接收到消息管理中心模块的大数据量的性能测试请求之后开始执行测试用例,并通过性能测试脚本调用数据测试脚本,数据测试脚本基于测试用例维护表的状态标志判断是否需要插入预设数据量的数据,若状态标志表示已经存在用于性能测试的数据则不需要再插入数据,若状态标志表示数据不存在用于性能测试的数据,则插入预设数据量的数据。
[0010]进一步的,所述插入预设数据量的数据,具体包括:数据测试脚本中通过设置的数据库信息、表名,初始化数据库连接,调用数据库插入语句;得到可执行SQL语句的光标对象,将插入数据写成随机变量形式通过循环大批量插入,基于预设数据量执行完成后发送消息管理中心插入完成消息,并返回结果集以元组显示。
[0011]进一步的,还包括将发送API请求的接口的标识和测试步骤的标识添加至性能测试样本并保存。
[0012]进一步的,开启测试结果收集以及分析测试结果,具体包括,基于各个用户服务器的压力测试结果数据和部署待测试工业软件的服务器的资源使用情况数据按时间序列保存至时间序列数据库,其中,每条数据至少包括时间戳,并定时发送数据,基于Web页面可视图动态展示压力测试结果数据和服务器的资源使用情况数据。
[0013]进一步的,还包括:若测试结果数据错误或服务器的资源使用情况数据超出预设阈值,则通过消息中间件通知配置测试参数中设置的接收人,以及,通过测试管理中心工具的Web页面访问查看压力测试结果数据和服务器的资源使用情况数据。
[0014]进一步的,所述工业软件大数据量的性能测试方法还包括,基于预设日志级别,对日志进行收集、存储和过滤,以及,基于图形化的编程进行日志的展示,从而快速定位问题。
[0015]进一步的,所述测试管理中心工具的还包括系统配置模块、资源文件模块、任务调度模块、监控模块、数据分析模块和数据展示模块;所述系统配置模块用于配置被测服务器、测试执行机运行参数和测试环境;所述资源文件模块用于配置测试脚本;所述任务调度模块用于配置任务名称、选择执行的测试脚本、执行的时间和频率,以及,任务构建执行后,启动性能测试,执行测试脚本。所述监控模块用于监控被测服务器、测试执行机池的运行情况,并且收集被测服务器、测试执行机池的运行数据;所述数据分析模块用于对性能测试结果指标和服务器资源使用情况通过Python编程的方式进行分析、汇总;所述数据展示模块用于进行可视图实时动态展示用户设置的各种性能测试结果指标和服务器资源使用情况;所述消息管理中心模块还用于配置相关通知人员、通知方式、通知频率,通过消息中间件及时通知相关负责人;所述日志管理模块用于收集测试执行机池执行过程中的日志文件。
[0016]进一步的,所述数据测试脚本为Python脚本,所述性能测试脚本为Jmeter脚本。
[0017]本专利技术的第二个方面还提出了一种运行上述性能测试方法的性能测试系统,至少包括脚本管理中心,实时监控中心和消息管理中心,所述脚本管理中心用于适配不同业务场景运行对应的脚本,以及创建测试数据;所述实时监控系统用于实时获取运行脚本后的性能测试结果和服务器资源信息,并发送至消息管理中心;所述消息管理中心基于预设阈值、性能测试结果和服务器资源信息反馈测试结果。
[0018]本专利技术的有益效果是:
[0019]1、对工业软件领域性能测试业务场景复杂、数据量大、时效性高的痛点,调用不同的脚本快速生成大量数据库数据;
[0020]2、在性能测试过程中实时监控性能测试结果与服务器资源,及时主动向用户发送消息,以便用户快速做出调整,是工业软件领域内适配性好、针对性强、快速高效的性能测试方法;
[0021]3、同时通过配置定时任务可以实时发送测试结果到分析装置,通过分析装置可以分析结果,并将分析结果通过邮件配置服务器发送到用户,真正实现了无人值守的性能测试过程。
附图说明
[0022]图1为本专利技术实施例的工业软件大数据量的性能测试方法的流程示本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种工业软件大数据量的性能测试方法,其特征在于,包括:部署API请求抓取工具,所述API请求抓取工具用于收集API请求信息;基于预设性能测试场景和性能测试要求,模拟若干用户通过浏览器访问对应的业务功能,基于API请求抓取工具对访问产生的API请求信息进行收集,从而生成性能测试脚本;部署脚本管理中心工具,所述脚本管理中心工具至少包括用于导入多个测试用例的测试用例维护模块、用于导入性能测试脚本的功能模块和对应不同测试场景的测试用例的数据测试脚本,所述脚本管理中心通过测试用例模块对导入的测试用例进行解析,将解析的内容存储到用例维护表中,其中,数据测试脚本中至少包括连接数据库所需的脚本;部署测试管理中心工具,所述测试管理中心至少包括消息管理中心模块,所述消息管理中心模块用于发送消息任务至脚本管理中心,开启大数据量的性能测试;性能测试脚本调用数据测试脚本,数据测试脚本基于对应测试用例的测试用例维护表的状态标志向数据库插入预设数据量的模拟数据,生成的模拟数据用于大数据量的性能测试;消息管理中心模块接收到数据测试脚本的执行结果,开始大数据量的性能测试任务;开启测试结果收集并分析测试结果。2.根据权利要求1所述的工业软件大数据量的性能测试方法,其特征在于,所述性能测试脚本调用数据测试脚本,数据测试脚本基于测试用例维护模块的状态标志向数据库插入预设数据量的模拟数据,具体包括:所述脚本管理中心工具接收到消息管理中心模块的大数据量的性能测试请求之后开始执行测试用例,并通过性能测试脚本调用数据测试脚本,数据测试脚本基于测试用例维护表的状态标志判断是否需要插入预设数据量的数据,若状态标志表示已经存在用于性能测试的数据则不需要再插入数据,若状态标志表示数据不存在用于性能测试的数据,则插入预设数据量的数据。3.根据权利要求2所述的工业软件大数据量的性能测试方法,其特征在于,所述插入预设数据量的数据,具体包括:数据测试脚本中通过设置的数据库信息、表名,初始化数据库连接,调用数据库插入语句;得到可执行SQL语句的光标对象,将插入数据写成随机变量形式通过循环大批量插入,基于预设数据量执行完成后发送消息管理中心插入完成消息,并返回结果集以元组显示。4.根据权利要求1所述的工业软件大数据量的性能测试方法,其特征在于,还包括将发送API请求的接口的标识和测试步骤的标识添加至性能测试样本并保存。5.根据权利要求1所述的工业软件大数据量的性能测试方法,其特征在于,开启测试结果收集以及分析测试结果,具体包括,基于各个用户服务器的压力测试结果数据和...

【专利技术属性】
技术研发人员:吴彬彬徐文豪袁强王勇
申请(专利权)人:浙江中控技术股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1