0

Query1:我正在对使用 Google 地图的应用程序进行负载测试。在 Jmeter 上录制脚本时,Google 地图窗口显示为纯文本,地图不显示。如何在 Jmeter 中记录脚本时包含谷歌地图?

查询 2:我尝试包含/排除模式。..(bmp|css|js|gif|ico|jpe?g|png|swf|woff)。虽然脚本录制,但仍然没有记录谷歌地图,并且应用程序给出错误,因为“地图可能表现错误”。

4

2 回答 2

2

这可能不是您要寻找的答案,但是测试 Google 地图不是您应该做的事情。我认为您应该只专注于您的应用程序负载测试,并排除任何外部内容,如地图、分析、横幅等,因为谷歌地图不是您可以控制的。

因此,我建议将您的负载测试仅限于您的应用程序域并过滤掉谷歌地图的东西

  • 如果您对 Google 地图查询使用单独的请求 - 禁用或删除它们
  • 如果您通过“检索所有嵌入式资源”检索 Google 地图内容 - 您可以通过将^((?!google).)*$正则表达式放入“URL 必须匹配”输入来过滤与谷歌域相关的内容。

有关如何排除多个域的详细信息和说明,请参阅从负载测试指南中排除域。

于 2015-05-30T09:51:57.110 回答
1

在某些情况下,JMeter 的内置记录控制器会丢失 Web 事务。建议使用独立于 JMeter 的专业 Web 调试器,例如 Charles 或 Fiddler。然后使用这些跟踪来仔细构建 JMeter 测试计划。您还可以查看 BadBoy,它具有一些“导出到 jmeter”功能。

当您在 JMeter 中重放这些 HTTP 请求时,您将不会在查看结果树中看到“正确”页面。这是因为 JMeter 无法将 JS 与之前的 HTML 响应相关联并执行实际制作功能所需的脚本,在本例中为 Google Map 代码。

从负载测试的角度来看,重要的是确保 JMeter 接收浏览器所需的所有资源(使用真正的 Web 代理工具准确捕获)。当您开始对应用程序进行负载测试时,功能测试应该已经完成​​。这意味着实际上不需要让 JMeter 运行地图代码,只需在加载时从服务器中拉取它。

在记录仪的包含/排除方面,您会发现专业工具要准确得多。

我希望在某种程度上回答了这个问题,请随时要求更多澄清。一般来说,我发现使用 JMeter 的内置记录控制器会创建混乱的 JMX 文件,这些文件需要更多的重构工作,而不是使用外部跟踪从头开始仔细构建测试所需的工作量。

于 2015-05-29T19:09:57.663 回答