我在Jmeter中有一个关于Groovy脚本的问题。
我在Groovy中创建了一个连接Redis DB的函数,该函数按预期工作。
之后,当我从“主要”我尝试获取数据时,它说他不熟悉Redis的获取。
我的目的是创建连接Redis的第一个函数,第二个创建Redis密钥的函数,第三个函数使用Redis密钥获取数据。
在“主要”中我打电话给columns = int(input("How many columns? "))
while columns <= 0:
print ("Invalid entry, try again!")
columns = int(input("How many columns? "))
x = 1
while x < columns:
y = 0
while y < x:
print(" ", end="")
y += 1
print("*")
x += 1
x = columns
while x > 0:
y = 0
while y < x:
print(" ", end="")
y += 1
print("*")
x -= 1
并且它有效,但第三个不起作用。是因为连接已关闭吗?
答案 0 :(得分:0)
没有看到你的代码很难猜到什么是错的,根据错误消息jedis
变量没有在范围中定义,你试图访问它。您可以尝试全局定义它:
def jedis = null; // make "jedis" variable available to all methods
void connect() {
jedis = new Jedis(vars.get('Redis_IP', vars.get('Redis_Port') as int)
}
void somethingElse () {
if (jedis != null) {
log.info(jedis.ping())
}
}
要考虑的几点:
建议尽可能使用JMeter内置功能(或插件),因为即使是表现良好的Groovy脚本也不能像“普通”Java代码那样快速执行。查看Redis Data Set是否与您的用例匹配,如果匹配,只需使用JMeter插件管理器安装它,然后开始使用而不是使用Groovy。
有关插件安装和使用的分步说明,请参阅JMeter’s Redis Data Set - An Introduction文章