引言 jvm-sandbox-repeater是基于阿里开源jvm-sandbox框架、面向测试人员的流量录制与回放工具。本文将初步体验下jvm-snadbox-repeator相关特性及部署。 注意 最好在Macos或Linux下使用,Windows下使用存在诸多问题。
1.概述
下面将从“什么是jvm-sandbox-repeater”、“核心能力(feature)”、“适用人群”、“适用场景”进行介绍:
1.什么是jvm-sandbox-repeator
jvm-sandbox-repeator是基于阿里开源jvm-sandbox框架的一款工具:
- 具备jvm-sandbox的所有特点【无侵入、类隔离、可插拔、多租户、高兼容】
- 插件式设计能快速适配各种中间件。
- 支持(请求)流量的录制、回放。
- 提供可扩展的API,便于进行自定义。
2.核心能力(feature)
下面将介绍jvm-sandbox-repeater具备哪些核心能力:3.适用人群
jvm-sandbox-repeator适合测试人员适用。4.适用场景
2.java工程目录介绍
目录 | 说明 |
---|---|
hessian-lite | 序列化的框架(第三方) |
repeater-aide | 回放的工具(包含:diff等) |
repeater-client | —- |
repeater-console | —- |
repeater-module | 核心的模块 |
repeater-plugin-api | 接口 |
repeater-plugin-core | 核心的实现 |
repeater-plugins | 插件 |
3.组件部署
1.console部署
在“jvm-sandbox-repeater(java项目)”中,进行如下配置操作:
1.配置mysql数据源
修改“jvm-sandbox-repeater/repeater-console/repeater-console-start/src/main/resources/application.properties”中的datasource相关配置:
2.mysql表数据初始化
将“jvm-sandbox-repeater/repeater-console/repeater-console-dal/src/main/resources/database.sql
”中的导入mysql中:
数据库文件database.sql
2.repeater部署
1.安装执行shell脚本
cd jvm-sandbox-repeater/bin && sh install-local.sh && sh install-repeater.sh
2.运行jvm-sandbox-repeater-console
因为jvm-sandbox-repeater-console默认的端口号为8001,若你要修改port,需在“jvm-sandbox-repeater/repeater-console/repeater-console-start/src/main/resources/application.properties”中更新server.port相关信息。
kill -9 $(lsof -i:8001|awk '{print $2}')
cd jvm-sandbox-repeater
mvn clean install -DskipTests && nohup java -jar repeater-console/repeater-console-start/target/repeater-console.jar > console.log 2>&1 &
3.部署被测系统
本文我们借鉴【Testerhome】jvm-sandbox-repeater 尝鲜 (四)——新版带界面 console 的使用,该作者提供的被测系统(git仓库 https://github.com/chenhengjie123/gs-rest-service)
1.运行被测系统
kill -9 $(lsof -i:8080|awk '{print $2}')
cd gs-rest-service/complete
#mvn install && java -jar -Dapp.name=gs-repeater -Dapp.env=dev1 target/*.jar
mvn install && java -jar target/*.jar
2.jvm-sandbox绑定“被测系统”
笔者使用的MacOS,而本文“sh install-local.sh”中,jvm-sandbox被默认安装到了“Users/MAC用户/.opt/sandbox”。下面是具体的绑定步骤:
sh /Users/MAC用户/.opt/sandbox/bin -p `ps -ef | grep "target/gs-rest-service-0.1.0.jar" | grep -v grep | awk '{print $2}'` -P 12580
4.示例演示
1.访问console页面
浏览器访问:http://127.0.0.1:8001/online/search.htm#
2.配置管理(新增配置)
【明天在写——待续】