如何让Jmeter识别“localhost”URL?

时间:2015-04-16 05:43:05

标签: jmeter performance-testing

如何对只能在我的电脑上访问的localhost网址进行性能测试?

我可以使用jmeter对谷歌等实时网站进行性能测试,但jmeter无法检测本地网址。 application-192.168.121.20的URL:8001
2.视图结果树监听器的输出 - 所有失败的http警报HTTP请求采样器的屏幕截图说明 - 仅添加服务器名称,即URL -

9 个答案:

答案 0 :(得分:6)

JMeter并不关心被测试的应用程序是本地还是远程,如果您无法使用JMeter访问本地URL - 您的HTTP请求采样器配置有问题,很可能是#34; Port"价值是错误的。

为了能够帮助我们需要知道以下内容:  1.您的申请的URL  2. View Results Tree听众的输出  3. JMeter日志的内容  4. HTTP请求采样器的屏幕截图说明

作为替代选项,您可以尝试使用JMeter Chrome Extension录制您的方案,并查看您是否能够无错误地重播录制的方案。同样,使用“查看结果树”侦听器来检查请求和响应详细信息。

一般情况下,不建议运行受测试的应用程序,并且与负载生成器(在您的情况下为JMeter)相同的物理或虚拟机上的负载生成器可能会占用大量资源,如CPU和RAM,并且可能会干扰您的应用程序运行状况(除非您使用完全隔离的容器),因此我建议使用单独的主机用于应用程序和负载生成器。

答案 1 :(得分:3)

对于第一次使用JMeter测试localhost的任何人,请确保正确配置端点。

对于http://localhost:8080/rest/comments的获取请求,请设置:

  • 服务器名称或IP:localhost
  • 港口号码:8080
  • 路径:/ rest / comments

方法:获取

答案 2 :(得分:2)

我遇到了同样的问题,但我的错误是,我认为服务器名称网址,但它不起作用。

这是错误的方式:

  • 服务器名称:" localhost / api / v1" (错)
  • Http Request - >路径:" / auth"

Http Request Defaults(Jmeter):

Http Request Defaults (Jmeter)

正确的方法:

  • 服务器名称:" localhost"
  • Http Request - >路径:" / api / v1 / auth"

Http Request Defaults(Jmeter):

Http Request Defaults (Jmeter)

Http请求(测试):

Http Request (Test)

答案 3 :(得分:1)

为了让Jmeter"识别" localhost(以及您计算机上的任何其他程序)您必须修改 host 文件:

在Windows上

  1. 通常主机位于C:/ windows / system32 / drivers / etc /下。只需用任何文本编辑器打开它。
  2. 将以下记录添加到此文件并保存更改:

    127.0.0.1 localhost

  3. 在OSx上

    1. 打开 / private / etc / hosts 文件,以便使用任何文本编辑器进行编辑
    2. 将以下记录添加到此文件并保存更改:

      127.0.0.1 localhost

    3. 因此,您将localhost映射到您的计算机默认本地IP地址127.0.0.1

答案 4 :(得分:1)

请注意,我为每个步骤都附上了图片

第一步:首先创建线程组。创建线程组后,您将看到三个部分。 线程数表示要执行多少个请求,循环数表示要执行多少次

enter image description here

enter image description here

第 2 步: 右键单击​​线程组 Add --> Sampler --> http request as like attach image 。在名称字段中,只需给出您想要的名称。在我的如果是 Order Service http 请求

  • 在提交的协议中,我将发送 http 请求,因此我在框中提供了 http
  • 在服务器名称中,我将其设置为 localhost 因为我使用的是本地机器。如果您只使用远程服务器,则使用 IP 地址或域名。不要在ip地址或域名前后使用http或端口号
  • 端口号字段中,我使用的是 9003 这就是为什么我给出了 9003 。
  • 在 http 请求字段中,在我的情况下使用您想要的 http 方法,我将发布一些数据,因此我使用 POST 方法,以便我选择了发布方法
  • Path 字段只使用 ip 地址或域名或 localhost 之后的路径,在我的情况下它是 order/create-order 。请注意,在此之前不要添加正斜杠。 JMeter 会自动添加斜线。
  • 因为是发布请求,所以我的服务器端请求了一些正文数据,所以我将其附加为 json 格式,因此单击正文数据 enter image description here

enter image description here

第 3 步: 有时您需要传递一些标题信息,例如 内容类型。为此,您需要创建另一个选项 HTTP 标头管理器来创建该选项。右键单击线程组,然后添加-> 配置元素-> http 标头管理就像附加图像一样。我已经给出了内容类型 enter image description here enter image description here

第 4 步: 现在您已准备好向服务器发出请求,但有时您需要检查响应和其他内容,以便单击线程组然后添加 -> 监听器 -> 查看结果树 enter image description here

最后一步:要执行请求,请点击顶部栏中的绿色按钮。

答案 5 :(得分:0)

使用ipconfig(Windows)获取IP地址

认为您的网址是-http://192.168.8.149:3000/api/user/showTeams

使用服务器名称或IP -192.168.8.149 使用端口号-3000 使用协议-http 使用路径-api / user / showTeams

答案 6 :(得分:0)

  • 使用IPv4地址而不是使用localhost或127.0.0.1来访问本地应用程序。
  • 从“文件”>“模板”获取JMeter的记录模板。
  • 在8888端口上设置代理并开始记录

答案 7 :(得分:0)

就我而言,我在端口8080上使用本地Tomcat运行了一个Web应用程序。JMeter无法使用localhost:8080 / app-name进行连接。它可以很好地连接到远程主机:8080 / app-name。

解决方案:我发现还有另一个应用程序可以使用127.0.0.1:8080/another-app访问。也许,这使JMeter感到困惑。因此,最终,我使用server.xml将tomcat端口更改为9090,然后JMeter能够连接到localhost:9090 / app-name

答案 8 :(得分:0)

使用http://[::1]:{port}/route

作为路径

[::1]而不是localhost为我解决了这个问题,我花了几个小时才弄清这一点