使用PageSpeed Insights的客户端自动化-如何在JMeter中将结果传输< URL>< metric>到摘要(/聚合)报告中?

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

我正在考虑使用JMeter中的Lighthouse或PageSpeed Insights实现客户端自动化的解决方案。
借助PageSpeed Insights,使用以下请求
https://pagespeed.web.dev/report?url= %2F外形=移动的设备(& F)
https://pagespeed.web.dev/report?url= %2F外形规格=台式机(& F)
可以获得包含客户端度量网页,并将它们的值解析为变量:
URL_第一个内容丰富的绘画(FCP)
URL_第一次输入延迟(FID)
URL_最大内容绘制(LCP)
URL_累积布局偏移(CLS)
URL_速度索引
URL_交互时间
URL_总阻止时间
...
例如,URL_metric -作为变量名,其中 URLmetric 都可以更改。
问题是,如果我想在JMeter的“Summary Report”或“Aggregate Report”视图中查看 URLmetric 的每种组合的结果统计信息,在JMeter中将这些变量名称(URL_metric)作为Label传递的最佳方式是什么?

xxslljrj

xxslljrj1#

您可以将保存的值转储到一个通常的JMeter输出格式(JTL)的文件中:

{timestamp},{duration},{sample_name},200,OK,thread_group_name 1-1,text,true,,0,0,20,65,null,0,0,0\n

大括号表示占位符。
您已经有了持续时间和样本名称,时间戳在您的情况下并不重要,因为您只希望得到聚合结果。
将数据保存到文件后,您可以使用摘要报告聚合报告打开该文件。

dba5bblo

dba5bblo2#

为了获得客户端指标,您需要一个真实的的浏览器,如JMeter project main page所示:

JMeter不是一个浏览器,它在协议层工作。就Web服务和远程服务而言,JMeter看起来像一个浏览器(或者更确切地说,多个浏览器);但是JMeter并不执行浏览器支持的所有操作。特别是,JMeter不执行HTML页面中的Javascript。它也不像浏览器那样呈现HTML页面(可以将响应显示为HTML等,但任何示例中都不包括计时,并且一个线程中每次只显示一个示例)。

因此,为了从JMeter获得客户端指标,您需要启动一个真实的的浏览器,例如,看看WebDriver Sampler,它提供了JMeter与Selenium浏览器自动化框架的集成,查看Mixing Selenium Into Your Load Scenario以了解更多细节。
一旦您有了度量,您就可以将它们存储到JMeter的Sample Variables中,并在HTML报告 Jmeter 板的自定义图表中绘制它们

相关问题