我目前是 JMeter 的新手,我正在测试一个 Rest API,我需要记录响应来自的服务器 IP。
我能够测试 API 但无法记录 IP 地址。我怎样才能达到同样的效果?
我目前是 JMeter 的新手,我正在测试一个 Rest API,我需要记录响应来自的服务器 IP。
我能够测试 API 但无法记录 IP 地址。我怎样才能达到同样的效果?
假设您在 variable 中发送到服务器名称serverName
,因此添加JSR223 PostProcessor (或其他 JSR223 元素)并使用InetAddress获取 IP :
此类表示 Internet 协议 (IP) 地址。
InetAddress address = InetAddress.getByName(vars.get("serverName"));
log.info address.getHostAddress();
vars.put("serverIP", address.getHostAddress());
然后你可以使用${serverIP}
变量
将以下代码放入“脚本”区域:
log.info('Source IP address: ' + InetAddress.getByName(sampler.getDomain()).getHostAddress())
它将IP地址打印到jmeter.log文件
如果您想保存此 IP 以供以后重用,您可以修改如下代码:
vars.put('ip', InetAddress.getByName(sampler.getDomain()).getHostAddress())
并将下一行添加到user.properties文件:
sample_variables=ip
因此,您将在 .jtl 文件中有一个额外的列,其中包含服务器的 IP 地址。
更多信息: