[原创] jMeter 使用 HTTP Authorization Manager 注意事项

  最近在使用 jMeter(version 2.7) 进行 HTTP Authorization 认证时(就是使用浏览器访问网站时会弹出一个对话框,要求输入用户名及密码)出现了问题,怎么都无法通过认证。上网一顿查啊,也仔细的阅读了官网的资料,调查了好久,但就是不好使。
  后来不经意的一个发现,让我终于查出了原因。
  我的 Test Plan 结构如下:

Test Plan
  |
  ——Thread Group
  |    |
  |    |——HTTP Authorization Manager
  |    |——HTTP Request
  |       |
  |       ——Assertion
  ———HTTP Request Defaults(其中, Http Request Implementation 选择的是 Java 方式)
  HTTP Authorization Manager 中需要添加的信息如下:
  Base URL(必须),User Name(必须),Password(必须),Domain(可选),Realm(可选)
  问题就出现在 Base URL 这,原来我填写的 Base URL 是 http://www.example.com/folder/sample**/**,问题出来了,正是在 URL 后面多写的这个 “/“,导致无法通过认证的(这也太不智能了!!!),把 “/“ 去了之后,一切就正常了,终于可以通过认证了。
  PS:网上有说在如下文件中进行设置(或打开设置)

jmeter.properties
httpclient.parameters.file=httpclient.parameters

httpclient.parameters
http.authentication.preemptive$Boolean=true
  经本人测试,在 jMeter(version 2.7) 中,无论 Http Request Implementation 选择的是什么(即使选择的是 HttpClient)都不需要进行上述两项的设置。

坚持原创及高品质技术分享,您的支持将鼓励我继续创作!