5

What is to be done?

We have an application deployed on the Sharepoint (corporate) Server which uses the windows credentials to log into the application.

The objective is to perform the load/performance testing on the application (especially the log in functionality) for such n number of users.

Normally when I hit the app URL in the Firefox/IE, it pops up a window asking for credentials. I enter the credentials, browse the app and then log out. I intend to capture this in JMeter and simulate this for large number of users.

Where I’m stuck?

Now I start the JMeter proxy server, and then try the same steps as above. But when the pop up window appears, JMeter simply doesn’t record the it nor it does record anything else after the login.

What I’ve tried?

If I try the same steps after enabling “Automatically detect intranet network” in IE, then it simply auto detects my windows credentials (No credentials pop-up), logs me into the app (this is not recorded in JMeter either) and takes me to the home page. And any page thereafter I hit gets recorded in JMeter.

I’ve also tried to use the HTTP Authorization Manager using following parameters:

It didn't help. I am quite confused about how-to-use the above element. And not even sure whether its a right approach to get the solution to my problem.

Any help/suggestions?

P.S. I know about a tool called Badboy, but have to go for it as a last resource. Also not even sure if it records the pop windows. And sorry if the post is verbose.


UPDATE:

I have also tried -

Username: USER_ID and Domain: my_company_domain

But this is not the actual problem. Problem is, when I try to hit the pages (automation) which I've recorded previously return success response even if I haven't used the HTTP Authorization Manager. I'm not sure what I'm missing.

Ravindra S
  • 6,302
  • 12
  • 70
  • 108

2 Answers2

4

OK. Finally I got what was missing.

First, I had to change the implementation of every request to HttpClient3.1

Second, it was really frustrating to see that JMeter documentation was misleading.

It says that the config file httpclient.parameters, should be edited as following:

http.authentication.preemptive$Boolean=false

But it didn't work. Changing it to true worked like a charm.

Hope this helps other people.

Ravindra S
  • 6,302
  • 12
  • 70
  • 108
  • Your solution is not working for me. Can you please say which version of JMeter are you using (I use 2.7)? What elements did you use: _HTTP Authorization Manager_ or _Login Config Element_? – boro.djuka Jun 27 '12 at 06:25
  • 1
    Didn't work for me. In fact, nothing works :-( How come JMeter doesn't do this without any problems? – LeonZandman Dec 11 '14 at 12:30
0

JMeter works at the HTTP layer so the proxy will only capture requests made over this protocol layer. It sounds to me like you have already found the right approach to use for recording by using '“Automatically detect intranet network” in IE', you can use this method to capture most requests and you will have to figure out authentication manually. How you do this depends on how your application communicates with your server to authenticate a user.

Oliver Lloyd
  • 4,936
  • 7
  • 33
  • 55
  • Right. But, I'm just not getting past the authentication barrier. And that's the main target of my automation testing. I've added an update to the question. See if you can give any more pointers. Thanks. – Ravindra S Apr 19 '12 at 04:46
  • Sure, but you have to figure this out manually. There is no solution beyond working out how your app is authenticating (you do not actually describe this but I'm going to guess at NTLM) and then looking at options to make JMeter work with this. This is the fun of open source software, sometimes you have to get your hands dirty. – Oliver Lloyd Apr 19 '12 at 07:55
  • Thanks Oliver. It was NTLM only. And yes, I got my hands dirty. :) – Ravindra S Apr 25 '12 at 12:28