Announcing support for Goal-based Load Pattern in Cloud-based Load Tests

Jimson Chalissery [MSFT]

Cloud-based Load Tests with Visual Studio Online now supports goal-based load patterns. Both Agent counters and Load test counters are supported.

For those already familiar with goal-based load pattern in Load testing, go ahead and configure it just the way you’ve always done.

For those new to goal-based load pattern, read on.

A goal-based load pattern resembles the step pattern but adjusts the user load based on performance counter thresholds versus periodic user load adjustments. Goal based loads are useful for a variety of different purposes: 

  • Maximizing output from the agents: measure the key limiting metric on the agent to maximize the output of the agents. Typically, it is CPU; However, it could also be memory.
  • Reaching some target resource level, typically CPU, on the agent.

Goals can be based on agents counters, load test counters or server/app counters. We’ve currently enabled support for agent counters and load test counters and are working on enabling support for server/app counters.

A goal-based load pattern is useful when you want to determine the number of users that your system can support before it reaches some level of resource utilization. This option works best when you have already identified the limiting resource (that is, the bottleneck) in your system.

In the following table, an example shows a goal-based pattern with the following property settings:

Property Group  Property   Value 
Performance Counter  Category   Processor 
Performance Counter  Computer   
Performance Counter  Counter  % Processor Time  
Performance Counter  Instance   _Total 
Target Range for Performance Counter   High End  90 
Target Range for Performance Counter  Low End  70 
User Count Limits   Initial User Count 
User Count Limits   Maximum User Count   1000 
User Count Limits   Maximum User Count Decrement  
User Count Limits    Maximum User Count Increment 
User Count Limits     Minimum User Count  1











These settings cause the user load to be adjusted between 1 and 1000 during a test run in such a way that the Counter for % Processor Time hovers between 70% and 90%.

The size of the each user load adjustment is determined by Maximum User Count Increment and Maximum User Count Decrement settings. The user count limits are set by the Maximum User Count and Minimum User Count properties.

The ‘Computer’ property should be left blank as we don’t yet support Server side counters of your application.

These properties can be set through the properties sheet of  your scenario’s load pattern in your load test:

If you have questions or feedback, you can reach out to us at

Cloud-based Load Testing can be used for performance and load testing of your application by generating load from Azure. If you are new to Cloud-based Load Testing with Visual Studio Online then the following links will help you:

Introduction to Cloud Load Testing with VSO (video)

Getting started guide

Additional resources

Customer Stories / Case Study


If you have a feature request for us or an improvement you’d like to see, please log them on our UserVoice site.







Discussion is closed.

Feedback usabilla icon