[发明专利]基于系统多个版本的压力测试方法及装置在审
申请号: | 201811022047.2 | 申请日: | 2018-08-31 |
公开(公告)号: | CN109324964A | 公开(公告)日: | 2019-02-12 |
发明(设计)人: | 余剑楠 | 申请(专利权)人: | 广州牧云网络科技有限公司 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 广州三环专利商标代理有限公司 44202 | 代理人: | 颜希文;麦小婵 |
地址: | 510000 广东省广州市*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 分支代码 压力测试 指标数据 采集系统 代码运行 结果生成 容器技术 性能对比 自动部署 比对 构建 预设 | ||
本发明公开了一种基于系统多个版本的压力测试方法及装置,方法包括:采集系统多个版本对应的多个分支代码,依次将多个分支代码放置在预设的压测环境集中进行压力测试,得到多个指标数据;根据多个指标数据,生成多个分支代码的压测报告,并比对多个分支代码的压测报告,分别获得多个分支代码之间的对比报告。相比于现有的系统的多版本依赖多次修改压测环境进行压测,以及需手动进行多版本的压测对比的压测方法,本发明通过docker容器技术构建代码运行环境,实现自动部署,且采用多个压测环境进行代码压测,并根据压测结果生成压测报告和对比报告,实现同一个系统不同版本或者同一个版本在不同压测环境下的性能对比,提高压测效率及对比效率。
技术领域
本发明涉及数据测试技术领域,尤其涉及一种基于系统多个版本的压力测试方法及装置。
背景技术
压力测试是一种评估系统的性能和稳定性的方式。传统的压力测试,会对服务器造成影响,因此压力测试的进行有一定的风险性。
为解决压力测试对服务器造成影响的问题,现有技术中,通常会创造一个撞门的测压环境或灰度环境,减轻压力测试对服务器的影响,但当一个系统项目需要比对多个版本时,现有技术需要根据版本间的性能差异,手动进行环境部署更改,且两个系统版本的压测报告需要手动进行对比,这种繁琐的人工操作有着极大的不便。
发明内容
本发明实施例所要解决的技术问题在于,利用多个压测环境进行代码压测,并根据压测结果生成压测报告和对比报告,实现同一个系统不同版本或者同一个版本在不同压测环境下的性能对比,提高压测效率及对比效率。
为解决上述问题,本发明实施例提供一种基于系统多个版本的压力测试方法,适于在计算设备中执行,至少包括如下步骤:
采集系统多个版本对应的多个分支代码;
依次将所述多个分支代码放置在预设的压测环境集中进行压力测试,分别得到多个指标数据;其中,一个分支代码对应一个指标数据;所述压测环境集包括若干个压测环境,且每个压测环境在同一时刻内只允许一个分支代码进行压力测试;
根据所述多个指标数据,分别生成所述多个分支代码的压测报告,并比对所述多个分支代码的压测报告,分别获得所述多个分支代码之间的对比报告。
进一步的,所述采集系统多个版本对应的多个分支代码,具体为:
根据系统版本分支代码的仓库地址,运行代码检出命令,并根据所述检出命令,采集系统多个版本对应的所述多个分支代码。
进一步的,所述压测环境集通过docker容器技术进行预设。
进一步的,所述依次将所述多个分支代码放置在预设的压测环境集中进行压力测试,分别得到多个指标数据,具体为:
通过API的方式,设定每个所述分支代码进行压测时的压测配置,根据各所述压测配置,依次将所述多个分支代码放置在所述压力测试环境集内串行执行压力测试;
通过心跳检测,检测所述多个分支代码在所述压测环境集内的运行情况,得到所述多个指标数据,并将所述多个指标数据存储到数据库。
进一步的,所述压测配置包括请求URL、所述分支代码的压测时长和所述分支代码的并发程度。
进一步的,一个所述指标数据由同一个分支代码的多个指标子数据组成;
所述指标子数据由一个所述分支代码,在一个压测环境内进行压力测试后得到。
进一步的,所述分支代码利用代码管理工具进行代码采集;
其中,所述代码管理工具是以命令行方式集成的。
进一步的,本发明的另一个实施例还提供了一种基于系统多个版本的压力测试装置,包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于广州牧云网络科技有限公司,未经广州牧云网络科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811022047.2/2.html,转载请声明来源钻瓜专利网。