在JMeter中记录流量时,如何获取“HTTP请求-名称”中的“服务器名称(主机名称)”?

mlmc2os5  于 2022-11-09  发布在  其他
关注(0)|答案(2)|浏览(178)

我希望在“Http请求-名称”字段中包含“服务器名称(主机名)”沿着“路径”。
我检查了JMeter的官方文档,似乎我们在命名格式中只有#{Name}、#{path}和#{counter}。
我不需要#{name}和#{Counter},所以我只在命名格式中使用#{Path},它工作正常,但我想在HTTP请求名称中添加“Server Name(Host Name)”和“Path”。
随附几张快照以供参考。
请让我知道,如果有任何工作周围做同样的,提前感谢。
Http SamplerJmeter_Format_String_DocumentationTest_Script_Recorder

kr98yfug

kr98yfug1#

我认为这是不可能的,至少对于JMeter 5.5来说是不可能的,模板格式字符串只包括您提到的那些。

if (httpSampleNameMode == SAMPLER_NAME_NAMING_MODE_FORMATTER) {
    return format.replaceAll("#\\{name([,}])", "{0$1")
            .replaceAll("#\\{path([,}])", "{1$1")
            .replaceAll("#\\{counter([,}])", "{2$1");
}

您可以使用__groovy()函数来解决这个问题,如下所示:

${__groovy(ctx.getCurrentSampler().getDomain(),)

它将保存具有上述函数名称的采样器,但当您在监听器和.jtl results file中运行它们时,该函数将被目标服务器IP或DNS主机名的响应值替代。

jfgube3f

jfgube3f2#

在记录阶段无法获取服务器名称。但是,在创建请求后,可以使用后处理器追加必需字段。
下面给出了用于创建采样器的Jmeter模板名称。

相关问题