Alex
2021-11-02
我个人的理解,对于铺底数据,要分传统性能测试和全链路压测两块来说。 对于传统性能测试,铺底数据的准备需要考虑数据量、数据内容两个维度。底层逻辑在于对系统性能影响因素的评估。如果认为数据库容量是被测系统的关键性能影响因素,那么需要优先考虑数据容量的标准,即每张表所需要的数据量;如果业务逻辑执行效率是关键性能影响因素,则重点考虑灌入数据的内容质量,即铺底数据在性能测试执行过程中是否会被业务逻辑所调用。 对于全链路压测,铺底数据更多的是指在测试过程中会被使用到的配置数据、业务基础数据和运行时数据,一般来讲,生产环境的全链路压测,我们不太会从数据量的维度去人为增加数据库负载;这个时候,数据的业务属性正确性、数据染色逻辑等业务维度的考量就尤为重要了。 和场景分析一样,铺底数据的需求与创建方式,不应该是执行前才考虑的问题,应该在前期制定方案和计划时就需要通盘考虑和规划的。
作者回复: 感觉说的这两个角度不管在哪种情况下都要同样的考虑的。
5
守望者
2022-03-24
全链路线下压测铺底数据来源(直接线上压测没搞过):1、线上脱敏 2、无法获取线上脱敏的,根据全链路压测的核心业务梳理涉及的业务数据,以及业务数据的状态比例(举例 单据状态:已完成、进行中、废弃 10:1:1 ),加入脚本参数化的数据量后应该维持线上数据的状态比例。 脱敏方式有几种?1、加密 2、替换 (反正原则就是脱敏后的数据无法获取到到涉及个人隐私、财务数据等信息) ;同时,脱敏的字段不应该影响压测业务的正常处理。
作者回复: 理解的很对。
wchao190
2023-05-17
来自上海
直接把生产库的数据copy到影子库,是不是方便点