做后端测试,经常需要和redis打交道,插入一些数据做正向,临界,反向测试。
一般常用的工具是:RedisDesktopManager.exe,连上去以后,用来查询,插入都很方便,还有console可以看具体执行的指令,加深自己对redis指令的印象。
jmeter redis准备:
apache-jmeter-4.0\lib\ext下jar包一枚:jedis-3.3.0.jar
jmeter beanshell准备:
连接代码:这里以 XXX.XXX.XXX.XXX:XXXX/0为例
import redis.clients.jedis.Jedis;
import org.apache.commons.lang3.StringUtils;//要判空用这个挺方便
String host = "${redis-host}"; //服务器地址
int port = ${redis-port}; //端口号
int index = 0; //redis db,
String key = "${redis-key}"; //key值
Jedis jedis = new Jedis(host, port);
常用类型插入和查询:
//string
jedis.set("testkey", "testvalue");
String value= jedis.get("testkey");
//hash
jedis.hset("testkey","field","value");
String value2 = jedis.hget("testkey","field");
//获取整个hashmap
Map map = new HashMap();
map = jedis.hgetAll("test_key");
//注意不要用这种写法:Map<String, String> stringStringMap = jedis.hgetAll("test_key");
//ideal里不会报错,但jmeter里会报错,且jmeter不是很好定位报错。
hash长啥样
可以把变量提取出来,通过var.put传给jmeter供后续使用。
常用的检查用的组合套:Debug PostProcessor,可以看自己写的代码里面的变量是否都取到了。