如何在 JMeter 中使用 beanshell 获取机器 IP 地址?
How to get Machine IP Address using beanshell in JMeter?
我正在尝试在 beanshell 中为 jmeter 编写一个脚本,通过它我可以获得机器的 IP 地址(使用 ipconfig
命令并从输出中仅提取 IP 地址)?
下面的代码只给出了需要传递给jmeter的请求的IP。
String IP = InetAddress.getByName(prev.getURL().getHost()).getHostAddress();
vars.put("IP", IP);
谁能指导我?
试试这个:
vars.put("IP", org.apache.jmeter.util.JMeterUtils.getLocalHostIP());
演示:
您还可以在 "Parameters" 部分使用 __machineIP() 函数,并在脚本主体
中将值引用为 Parameters
或 bsh.args[0]
参考文献:
您还可以使用如下:
log.info("IP " + InetAddress.getLocalHost().getHostAddress());
String IP = InetAddress.getLocalHost().getHostAddress();
vars.put("localIP", IP);
稍后,您可以使用以下语法引用 IP:
${localIP} or vars.get("localIP")
您可以使用 JMeter 提供的单行变量 ${__machineIP}
而不是您的代码。确保我们使用 JMeter 提供的内置功能,如果它不满足,那么只有你应该选择其他选项。
所以你可以使用 ${__machineIP}
或 ${__machineIP()}
。
在某些情况下,它需要在 double quotes("")
内,请确定您需要使用 ""
的地方,而不是
的地方。
我正在尝试在 beanshell 中为 jmeter 编写一个脚本,通过它我可以获得机器的 IP 地址(使用 ipconfig
命令并从输出中仅提取 IP 地址)?
下面的代码只给出了需要传递给jmeter的请求的IP。
String IP = InetAddress.getByName(prev.getURL().getHost()).getHostAddress();
vars.put("IP", IP);
谁能指导我?
试试这个:
vars.put("IP", org.apache.jmeter.util.JMeterUtils.getLocalHostIP());
演示:
您还可以在 "Parameters" 部分使用 __machineIP() 函数,并在脚本主体
中将值引用为Parameters
或 bsh.args[0]
参考文献:
您还可以使用如下:
log.info("IP " + InetAddress.getLocalHost().getHostAddress());
String IP = InetAddress.getLocalHost().getHostAddress();
vars.put("localIP", IP);
稍后,您可以使用以下语法引用 IP:
${localIP} or vars.get("localIP")
您可以使用 JMeter 提供的单行变量 ${__machineIP}
而不是您的代码。确保我们使用 JMeter 提供的内置功能,如果它不满足,那么只有你应该选择其他选项。
所以你可以使用 ${__machineIP}
或 ${__machineIP()}
。
在某些情况下,它需要在 double quotes("")
内,请确定您需要使用 ""
的地方,而不是