在j meter测试脚本中我们为什么要排除java脚本,级联样式表并且仅包含html来检查性能测试中的响应时间?

时间:2016-09-14 09:10:10

标签: jmeter

在检查公共网站的性能时,我们为什么要排除java脚本,样式表,并且只包含返回HTML文件的基本请求(主持人" www.test.com"和" /"在路上。

2 个答案:

答案 0 :(得分:0)

因为JMeter只检索页面元素,并且不像真正的浏览器那样执行javascript或渲染这些组件。我个人喜欢检索所有嵌入的资源,以便让自己更好地了解总加载时间,即使没有执行/渲染javascript。

如果您愿意,您还可以进行选择性检索或完整检索。 使用名为“检索嵌入资源”的复选框,或指定应检索哪些元素。获取完整检索也很方便,可以查看页面中组件是否存在断开的链接。

答案 1 :(得分:0)

您需要仅在使用HTTP(S) Test Script Recorder的测试场景的录制期间排除这些脚本,样式和图像,就像您记录这些将被捕获的调用一样,但是当您重放它们时它与现实中的情况没有任何共同之处。

真实浏览器的行为如下:

  • 他们在请求主页时下载这些脚本,图像和样式,但使用多个并发线程并行来加快进程。所以主要请求分成几个子请求,这些子请求正在下载所有这些东西。在JMeter中,您可以使用HTTP RequestHTTP Request Defaults中的“检索所有嵌入资源”开关来模仿此行为

    Download Embedded resources

  • 如您所知,浏览器下载脚本,图像和样式,并使用多个并发线程来完成。接下来的一点是,表现良好的浏览器只执行一次,在后续请求中从浏览器的缓存中返回这些内容。因此,您需要在测试计划中添加HTTP Cache Manager来模拟表示浏览器缓存的此功能,而不是使服务器过载

  • 关于第三方内容。如果您的网站使用来自其他域的脚本,图像,视频等 - 建议您从负载测试范围中排除这些请求,因为您很可能无法控制这些第三方内容提供商并赢得了'即使瓶颈是由外部服务器引起的,也能够做任何事情,你的负载测试应该只关注你的应用程序。

有关上述提示的更多信息,请参阅How To Make JMeter Behave More Like A Real Browser指南。