简介
在Jmeter调试接口时,可能存在Redis缓存key,在JMeter中删除Redis缓存的key,可以使用JMeter的JSR223 Sampler结合Jedis库来实现。
步骤
## ①安装插件 Redis Data Set (可以不使用这个插件,发现可以不用这种方式)
下载Plugins Manager JAR文件:https://jmeter-plugins.org/get/
将文件复制到JMeter的lib/ext目录下
启动JMeter后可看到刚才添加的插件管理器
通过插件管理器添加redis插件,因为我已经安装了,所以列表不显示 Redis Data Set
安装成功后,可以在已安装列表上显示该插件
## ②使用插件
使用 JSR223 Sampler 执行脚本操作缓存
在取样器中添加 JSR223 Sampler
在JSR223 Sampler的脚本区域,编写删除Redis缓存key的脚本
其余类型的redis的脚本大同小异,这边就只列举几个常见的类型记录一下
import redis.clients.jedis.Jedis
// 连接到Redis服务器
Jedis jedis = new Jedis("redisHost", 6379)
// 如果有密码,使用jedis.auth("password")方法进行认证
// jedis.auth("your_redis_password")
// 删除指定的key
String keyToDelete = "your_key"
jedis.del(keyToDelete)
// 关闭连接
jedis.close()
执行测试计划,缓存就会被删除掉
// 以下是新增string类型缓存key的脚本
import redis.clients.jedis.Jedis;
// 连接到Redis服务器
Jedis jedis = new Jedis("redisHost", 6379)
// 如果需要密码,使用jedis.auth("password")
jedis.auth("your_redis_password")
// 增加缓存key value带有/需要转义 SET key value
String key = "your_key";
String value = "value";
jedis.set(key, value);
// 关闭连接
jedis.close();
// 以下是新增hash类型缓存key的脚本
import redis.clients.jedis.Jedis;
// 连接到Redis服务器
Jedis jedis = new Jedis("redisHost", 6379)
// 如果需要密码,使用jedis.auth("password")
jedis.auth("your_redis_password")
// 增加缓存key value带有/需要转义 HSET key field value
String key = "your_key";
String field = "field ";
String value = "value";
jedis.hset(key,field,value);
// 关闭连接
jedis.close();
// 以下是删除redis一个或多个hash表字段脚本
import redis.clients.jedis.Jedis;
// 连接到Redis服务器
Jedis jedis = new Jedis("redisHost", 6379)
// 如果需要密码,使用jedis.auth("password")
jedis.auth("your_redis_password")
// 删除缓存key value带有/需要转义 HDEL key field1 [field2]
String key = "your_key";
String field = "field";
jedis.hdel(key,field);
// 关闭连接
jedis.close();