我正在尝试在beanhell中为jmeter写一个脚本,通过它我可以获取一台机器的IP地址(使用ipconfig
命令并从输出中仅提取IP地址)?
以下代码仅提供需要传递给jmeter的请求的IP。
String IP = InetAddress.getByName(prev.getURL().getHost()).getHostAddress();
vars.put("IP", IP);
任何人都可以指导我吗?
答案 0 :(得分:3)
试试这个:
vars.put("IP", org.apache.jmeter.util.JMeterUtils.getLocalHostIP());
演示:
您还可以在"参数"中使用__machineIP()功能。部分并在脚本正文中将值引用为Parameters
或bsh.args[0]
参考文献:
答案 1 :(得分:2)
你也可以使用如下:
log.info("IP " + InetAddress.getLocalHost().getHostAddress());
String IP = InetAddress.getLocalHost().getHostAddress();
vars.put("localIP", IP);
稍后,您可以使用以下语法引用IP:
${localIP} or vars.get("localIP")
答案 2 :(得分:1)
您可以使用JMeter提供的单行变量${__machineIP}
代替代码。确保我们利用JMeter提供的内置功能,如果不满意,那么只有您应该选择其他选项。
因此,您可以使用${__machineIP}
或${__machineIP()}
。
在某些情况下,它需要放在double quotes("")
内,请确保需要在哪里使用""
,而不是在哪里。