2013-01-24 53 views
5

我是JMeter的新手,我想用JMeter代理加载测试本地Web应用程序记录测试用例。设置JMeter代理以记录本地Web应用程序上的活动

我第一次按照这里的指令http://jmeter.apache.org/usermanual/jmeter_proxy_step_by_step.pdf,一切正常。

比:

  • 我开始了我的web应用程序,说http://localhost:8080/my-application
  • 设置JMeter的端口的Web代理8081
  • 增加了一个HTTP请求默认的线程组
  • Addea记录控制器
  • 调用curl -X GET http://localhost:8081/my-application/index.html

我获得:

  • 请求被记录但有错误的参数,例如。 HTTPS而非http
  • 我不卷曲获得被请求的页面,但例外:org.apache.http.client.ClientProtocolException: URI does not specify a valid host name: https:///my-application/index.html/my-application/index.html
  • 我已经在HTTP请求默认指定的参数似乎ingnored?我将配置元素放置在HTTP代理服务器下,并尝试了很多设置。

怎么回事?我错过了一些基本配置?我以错误的方式使用JMeter Proxy?应遵循在JMeter的记录

回答

1

简单的步骤:

  1. 打开乌尔JMeter的(包含在默认测试计划和工作台)
  2. 添加一个线程组
  3. 添加“http请求的默认值” whic是根据配置(更改服务器名称i.ethe网站u需要记录)
  4. 加上“http代理服务器(工作台,右击,非测试元素 - http代理服务器)更改默认的8080端口 一些其它(如9090)
  5. 启动代理服务器
  6. 改变浏览器设置为手动设置与9090端口和本地主机

http://brittoc.wordpress.com/2011/03/28/jmeter-recording-steps/

1

我会建议使用这个Apache自己的教程,它位于这里... JMeter Proxy Tutorial

我看到你说你已经跟着它,但它可能已经改变你使用它,因为你的一些步骤不符合当前的教程。也许你的版本有一个bug或者你错过了一个步骤,因为我在5分钟前对它进行了双重检查,并且它对我有用,而且我没有看到你在上面讨论的一些步骤。

我知道你对你所关心的具体错误有具体的问题,但是根据你目前对这个过程的陌生性,我会放弃curl部分,并且像Apache描述的那样去做基本的代理记录得到更好的一般理解,然后从那里拿走。

我将添加到他们的教程中的唯一警告,他们创建过滤器只记录某些类型的操作,我实际上将它们留下以便记录所有操作,然后我将其稍后清理。

这样你就不会错过任何可能导致滞后的东西,因为这类资源被过滤掉了。

*现在,您的原始问题中有一件事,您可以尝试如果您无意做本教程,尝试浏览器,不卷曲并设置浏览器使用代理,并确保端口在代理节点上匹配您在jmeter中指定的那个。

2

往浏览器局域网设置

确保“对于本地地址不使用代理服务器”没有被选中,这样的要求将达到JMeter的代理服务器。

0

它的配置非常简单。请看附件截图。 enter image description here

2

Firefox默认设置将绕过代理的“localhost,127.0.0.1”,因此您的JMeter仍然无法记录它。您必须通过删除“localhost,127.0.0.1”来清空“No Proxy for”字段。希望这会有所帮助。