Distributed Performance Tests

Patrick has been charged with setting up a stress/performance test of a multi-tier web application. The development team would like the test to start out with the application deployed to a cluster of two application servers. Then, the team would like 20 client machines to simulate a load on the application by running though pre-recorded test scripts.

Patrick can use the Application Lifecycle Automation server (ALA) capabilities in AnthillPro to configure a BuildLife stage that runs a multi-machine stress/performance test like the one described briefly above. BuildLife stages in AnthillPro ALA Server are configured as Workflow definitions.

So, Patrick would define a new Workflow to perform the Stress/Performance test. Each Workflow is made up of a set of Jobs that are performed during the Workflow Case. Patrick would configure the workflow to simultaneously deploy the application to the two-server cluster and deploy the pre-recorded test scripts to the 20 client machines. An Agent Filter on the first job would identify the two machines in the server cluster and the Agent Filter on the second job would identify the 20 client machines.

Patrick would then configure Jobs to run the actual tests. One for the server cluster and the other for each of the client machines. The Job Configuration for the server cluster would define steps to initialize the application, a step to synchronize the completion of initialization, a step to synchronize the end of test, and perhaps a step to gather and publish performance reports. The Job configuration for each of the client machines would define steps to initialize the client, synchronize the completion of initialization, run the test scripts, synchronize the end of test, and cleanup. Each Job would execute on the appropriate machines due to the Agent Filter that is associated with its Job

Once configured, AnthillPro would be able to execute the stress/performance tests on any BuildLife of the project. The development team could be using AnthillPro to run continuous integration tests and thus may produce 10 or more BuildLifes per day. A nightly schedule may take the best Continuous Integration build (BuildLife) from that day and run the stress/performance test BuildLife stage on it. Or, a developer (or any other user with appropriate permissions) may use the AnthillPro web interface to manually kick off the stress/performance test Workflow on any existing BuildLife.

Finally, Patrick has time to catch-up on his other work and eat a sit-down lunch with his co-workers (instead of another cold sandwich in the testing environment).


© 2008 Urbancode, Inc.
Anthill, AnthillPro, and AnthillOS are trademarks of Urbancode, Inc.
All other trademarks are owned by their respective owners.
tel: (216) 858-9000 fax: (216) 858-6902 email:info@urbancode.com