[发明专利]分层压力测试方法、装置、电子设备及存储介质有效
申请号: | 201911340717.X | 申请日: | 2019-12-23 |
公开(公告)号: | CN111143209B | 公开(公告)日: | 2023-10-17 |
发明(设计)人: | 郑翔宇;李霞;张富 | 申请(专利权)人: | 五八有限公司 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 北京弘权知识产权代理有限公司 11363 | 代理人: | 逯长明;许伟群 |
地址: | 300450 天津市滨海新区经济技术开*** | 国省代码: | 天津;12 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 分层 压力 测试 方法 装置 电子设备 存储 介质 | ||
本发明公开了一种分层压力测试方法、装置、电子设备及存储介质,首先根据目标入口QPS值,确定各个待测试子层的目标数据量;再确定分层压力测试过程的目标业务量;然后根据所述各个待测试子层之间的调用关系反顺序,使用所述目标业务量对各个待测试子层依次进行测试,获得各个待测试子层对应的真实数据量;最后将所述各个待测试子层对应的真实数据量与其对应的目标数据量进行对比,获得所述各个待测试子层的测试结果。实现代码实现层子层的划分,将压力测试具体落实到每一个子层进行,最后获得每一子层的测试结果并对测试结果进行分析,进而能够判断出具体是哪一个子层出现了性能问题,使得性能问题的定位更加准确。
技术领域
本发明涉及软件开发技术领域,尤其涉及分层压力测试方法、装置、电子设备及存储介质。
背景技术
压力测试是指在软件产品开发过程中,测试软件产品运行的代码实现层能够承受的流量压力值的情况。开发人员利用压力测试的测试结果能够分析出代码实现层的性能问题,进而采取相应的手段对代码实现层进行优化处理或者进行结构调整。
目前在对于Web(World Wide Web,万维网)架构中的代码实现层进行压力测试时,通常是在软件产品一侧预估出能够达到的页面浏览量、网站独立访客数量等信息,然后根据这些信息评估出代码实现层调用的接口可能承受的压力,进而预估出代码实现层的QPS(Queries-per-second,每秒查询率)值,最后通过具体的压力测试过程获得真实的QPS值,通过判断真实的QPS值与预估的QPS值是否相等来确认代码实现层的性能是否符合承压预期。
然而,当前的Web架构结构通常非常复杂,其代码实现层通常还会被分为若干子层,如前端页面层、前端逻辑实现中间层、业务层、服务层和数据层等。目前这种对于代码实现层进行压力测试的方法,只能从宏观上了解代码实现层整体上的性能是否能符合承压预期,无法明确代码实现层中各个子层间的承压关系,在代码实现层的性能不符合承压预期时,无法确定导致代码实现层不能符合承压预期的性能问题具体出现在哪一个子层。
发明内容
本发明提供了一种分层压力测试方法、装置、电子设备及存储介质,以解决目前的压力测试方法只能从宏观上了解代码实现层整体上的性能是否能符合承压预期的问题。
第一方面,本发明提供了一种分层压力测试方法,包括:
获取目标入口QPS值;
根据代码实现层中各个待测试子层之间的调用关系及所述目标入口QPS值,确定各个待测试子层的目标数据量;
根据所述代码实现层中最后一个待测试子层的目标数据量,确定分层压力测试过程的目标业务量;
根据所述各个待测试子层之间的调用关系反顺序,使用所述目标业务量对各个待测试子层依次进行测试,获得各个待测试子层对应的真实数据量;
将所述各个待测试子层对应的真实数据量与其对应的目标数据量进行对比,获得所述各个待测试子层的测试结果。
结合第一方面,在第一方面的一种可实现方式中,所述待测试子层的目标数据量包括:
业务层中各个业务接口所承受的目标QPS值、服务层中各个服务接口所承受的目标QPS值以及数据层中数据服务被所述各个服务接口分别调用的目标次数,其中,所述业务层、所述服务层和所述数据层依次为所述代码实现层中的所述待测试子层。
结合第一方面,在第一方面的一种可实现方式中,所述根据代码实现层中各个待测试子层之间的调用关系及所述目标入口QPS值,确定各个待测试子层的目标数据量的步骤包括:
根据业务层各个业务接口在业务场景中被调用的比例,将所述目标入口QPS值分配给所述各个业务接口,获得各个业务接口所承受的目标QPS值;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于五八有限公司,未经五八有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911340717.X/2.html,转载请声明来源钻瓜专利网。