首页 > 其他分享 >测试开发之流量录制回放,压测有道

测试开发之流量录制回放,压测有道

时间:2023-01-28 15:56:34浏览次数:52  
标签:console 回放 java 压测 录制 sandbox repeater

1、JVM-sandbox-repeater介绍

2、可以应用到哪些场景?

3、安装部署

《本文由测试开发攻城狮王月明投稿 》

一、JVM-sandbox-repeater介绍

JVM-sandbox(沙箱)是阿里提供的开源项目,实现了一种在不重启、不侵入目标JVM应用的aop解决方案。

JVM-sandbox-repeater是基于JVM-sandbox的录制/回放通用解决方案

JVM-sandbox-repeater功能,看一下官方解释:

1、通用录制/回放功能

·无侵入式录制http、java、dubbo入参/返回值录制能力(业务系统无感知)

·基于TTL提供多线程子调用追踪,完整追踪一次请求的调用路径

·入口请求(http/dubbo/java)流量回放、子调用(java/dubbo)返回值mock能力

2、快速可扩展api实现

·录制/回放插件式架构

3、Standlone工作模式

·无需依赖任务服务端/存储,可以单机工作,提供录制/回放能力

二、可以应用到哪些场景?

1、业务快速回归

·基于线上流量的录制/回放,无需人肉准备自动化测试脚本,准备测试数据

2、线上问题排除

·录制回放提供“昨日重现”能力,还原线上真实场景到线下做问题排除和debug

·动态方法入参/返回值录制,提供线上快速问题定位

3、压测流量准备

·0成本录制http/dubbo等入口流量,昨晚压测流量模型进行压测

三、安装部署

环境准备

·首先需要有一台Linux服务器,用于部署录制回放应用

·JDK、maven等基础环境需要搭建完成

·在Git上下载jvm-sandbox/jvm-sandbox-repeater代码

·准备一个java项目,用于录制接口

·准备一个数据库,用于存放录制流量数据

安装:

java -jar sandbox-app-0.01 –SNAPSHOT.jar

 

 

看到上图,表示启动成功

请求接口:

JVM-sandbox-repeater部署

1、 执行install-local.sh

2、 安装完成后,用户目录下会出现sandbox、sandbox-module文件夹

3、 初始化数据库脚本

4、 启动repeater-console.jar文件。启动前,修复一下官方仓库里console项目重点一些代码问题

(1)查找

repeater-console/repeater-console-start/src/main/resources/velocity下面的所有文件,查找 #parse("/blocks ,统一改替换为 #parse("blocks 。原有代码最前面带上 / 会导致引用找不到报错

(2)修改

repeater-console/repeater-console-start/src/main/java/com/alibaba/repeater/console/start/controller/page/ReplayController.java中的 return "/replay/detail"; ,改为 return "replay/detail"; ,去掉双引号里面第一个 /

(3)修改

repeater-console/repeater-console-start/src/main/java/com/alibaba/repeater/console/start/controller/test/RegressPageController.java中的 return "/regress/index"; ,改为 return "regress/index";,去掉双引号里面第一个 /

启动console:java -jar repeater-console.jar

5、 访问console页面

进入console页面,操作配置管理,新增配置

应用名:unknown

环境:unknown

配置信息:

 

 

6、让repeater注入到被测应用

7、录制回放

访问录制接口

查看录制数据

点开console的在线流量,就可以看到刚请求的数据了

回放流量:

 

 

截止到这里,安装录制流程就结束了。随着公司业务不断的发展壮大,涉及的应用逐渐增多,业务场景逐渐复杂,对于复杂场景数据模拟过于复杂,通过流量录制访问的形式,可以更大可能性保证测试回归的数据接近真实性。

标签:console,回放,java,压测,录制,sandbox,repeater
From: https://www.cnblogs.com/zhaoruixiao/p/17070451.html

相关文章

  • 自动化测试之流量回放技术
    大家好,又见面了,我是你们的朋友全栈君。流量回放近几年一直是大家热衷讨论的话题,具体的效果智者见智。文章作者也是在技术工程领域有丰富的实践经验,推荐一看。本篇背......
  • python怎么对对边录制的mp4文件取最后一帧图信息
    提问: python怎么对对边录制产生的mp4文件取最后一帧图信息,这个录制的mp4文件还在录制中会不断增加文件体积,我要做个边录制边取最后一帧数进行识别物品类似功能,并且要求取......
  • 性能测试-第03天-掌握Jmeter断言和关联使用、自动录制脚本
    文章目录​​系列文章目录​​​​......
  • js浏览器录制屏幕
    <!DOCTYPEhtml><html><head><metacharset="utf-8"></head><body><buttontype="button"onclick="recordScreen()">Start</button><buttontype="bu......
  • 性能测试指标推算及压测示例
    性能测试指标推算及压测示例根据提测范围、业务需求推算性能需求和指标(如事务数、并发数等),然后写脚本时可根据此模拟线程数和约束条件,最后执行压测、监控服务器资源、分析......
  • 对 Pulsar 集群的压测与优化
    前言这段时间在做MQ(Pulsar)相关的治理工作,其中一个部分内容关于消息队列的升级,比如:一键创建一个测试集群。运行一批测试用例,覆盖我们线上使用到的功能,并输出测试报告......
  • MeterSphere 分布式部署压测
    1整体部署规划MeterSphere大规模的性能压测主要取决于三个组件:NodeController:为性能测试提供独立节点类型的测试资源池,接收来自系统的性能测试任务,动态的启动JMete......
  • cctv8被《三体》卡住了,网站打开根本看不了,估计已经破千万播放量了。我等着看回放呢。
    电视:cctv8频道:CCTV-8电视剧频道高清直播_CCTV节目官网_央视网​ 来源:cctv8从来没有那个电视节目比这个卡的。无论如何:我会一直追剧下去的。......
  • 记录一次接口压测遇到的问题
    前提条件:虚拟机4G8核 单接口性能tps2000tp9950ms虚拟机4G8核批处理接口性能tps1000tp9950ms 接口方法处理逻辑:多规则时间范围命中 拒绝营销命中 多......
  • 性能测试|Rpc接口压测
    现今有比较多的rpc框架应用于实际的生产中,像比较流行的Dubbo、Motan、Thrift、Grpc等。今天作者将以最近项目中用到的grpc为例,结合jmeter来介绍下rpc压测实施步骤。学习本......