Problem:
Scalability and setup can be problematic when setting up load and stress tests
Load testing
is one of the tougher disciplines, not only does it require automated test
execution, but it also requires high volumes of cases running every second. Scalability
can easily become a problem, for your execution, and limitations in the
infrastructure where the test is running dictates the test rather than your
non-functional requirements.
Solution:
Take your load test to the cloud
We have
quite some time used Microsoft Visual Studio & Azure to run distributed
load testing. It is a test setup of a test controller with multiple test agents hosted in Azure, using Visual Studio for running the distributed test.
It is the
test controller's responsibility to manage the test agents. The
controller handles the execution of the test cases, by nominating who (ie which test agents)
to perform the test and how the cases should be performed. It also makes
sure to distribute the relevant test cases for a given test agent when the test
started. When the test is finished, the controller collects the data from all
test agents and this forms the basis of test results.
The test
agent is responsible for the execution of the tests and simulation of a given number of
virtual users. The test controller tells which tests should be performed and
how many virtual users to be allocated for each test. Test Agent reports the
status to the test controller during the test, and this information is used to
generate the load test metrics.
For more
information on test controllers and agents please see MSDN: http://msdn.microsoft.com/en-us/library/vstudio/dd648127.aspx
The trick
is getting all the test controllers and agents setup, and then running the
automated test on this setup. But once it is running there is really no limit to the number of test agents you can spawn to do your bidding. There is a nice demo on Youtube, showing running Web
performance test and load test in Visual Studio 2010: http://youtu.be/yhkHtXcgWUc
Another
thing that you might want to look into is the preview version of MS Visual Studio
2013 – It incorporates distributed load testing as a feature, cutting most of
the setup of controllers and agents, making distributed load testing much more easily
available.
For an overview
of the new features of VS 2013 have a look at Brian Harry’s Blog: http://blogs.msdn.com/b/bharry/archive/2013/06/03/visual-studio-2013.aspx
Preview
version of VS 2013 can be found here: http://www.microsoft.com/visualstudio/eng/2013-preview
Have a nice
day & Happy testing!
/Nicolai
No comments:
Post a Comment