Some users come across these type of issues in their load test runs:

  1. RPS decreases though user load increases
  2. RPS decreases gradually over the duration of run though user load is constant

RPS Pattern like shown below in graph indeed looks confusing:

image

As part of investigations we found that these issues are caused by:

1) Caching of dependent requests

Please note that dependent requests are always cached even though you’ve turned off caching by setting “Percentage of new users” property to 100%. This blogs talk about it in detail: http://blogs.msdn.com/b/billbar/archive/2007/01/22/simulation-of-browser-caching-in-vsts-load-tests-and-web-tests.aspx

Please note that we are NOT recommending to disable caching of dependent requests. We are just clarifying that RPS dips because of it. Additionally, if user wants to disable caching of dependent requests because of his scenarios requirements then he can do it. Above blog link talks about how to do it.

2)Unhealthy CPU (85%+) on agent box

We’ve observed that if CPU is above 85%+ on test agent box then RPS dips so recommendation here is to restrict CPU on test agent box within 85%.

3) Anti-virus / anti-malware

We’ve observed that anti-virus / anti-malware spikes CPU on test agent box. This is because QTAgent does lots of activity on agent box so anti-virus thinks there is some something suspicious about QTAgent process. So we are recommending here to make sure that no other processes are eating CPU on Agent machines and add QTAgent (/QTAgent32) process in excluded process of antivirus to avoid CPU spike by anti-virus.

I hope this will help you in understanding RPS pattern in your load test runs and taking appropriate action accordingly.

Let me know in case of any Qs / issues. You can post your query here as well.