CloudTest is a dynamic Web application that combines an innovative Ajax-based user interface with three distributed Web services to support test creation, test execution, and test result analytics. These three services include:
The Repository retrieves and stores CloudTest objects such as user scenario recordings, test clips, test compositions, play lists, users, targets, performance data and test results.
Maestro is a test engine, implemented as a massively multi-threaded service, which executes all or parts of a complex test composition. A single Maestro node is capable of sending and validating responses to thousands of http messages per second. Multiple Maestros can be combined to each execute parts of a large load test that can scale out to tens and hundreds of thousands of virtual users. Maestros can be geographically distributed and single test compositions can run geographically distributed while still producing a single integrated set of test results and analytics.
Analytics Dashboard is a memory-based analytic service (with persistence to disk) purpose-built to handle very large result sets and analytics from the most complex distributed load tests with great performance. In addition, the Analytic Dashboard automatically correlates many data streams from a distributed load test into a single test result on a synchronized timeline.
In addition, CloudTest includes an installable software agent called Conductor that records http(s) message traffic for test creation, launches browser instances, and plays UI/Ajax/Flex tests on client machines.
Massively Multi-threaded Maestro Test Engine
The Maestro test engine is based on a massively multi-threaded software design that drives today’s modern multi-chip, multi-core servers to their full potential. When you really need to turn up the volume on your load test, CloudTest allows you to scale out to higher numbers of virtual users with less hardware. You save hardware expense and the logistics of driving a high volume test are easier to handle.
Distributed Web Services Architecture
All of the components of the CloudTest architecture are services-based and can be installed on different physical servers to maximize scale and performance. This architectural flexibility allows the CloudTest application to be run in many hardware configurations starting from a single all-in-one server node all the way to a very complex large global test network capable of running a test simultaneously from many server nodes distributed around the world.
Multiple Maestros for High Volume Testing<
CloudTest supports the ability for multiple Maestro test engines to be "stacked" in order to scale out the CloudTest architecture for high volume load testing. Each Maestro node is capable of driving load testing for up to 2,000 virtual users. For load testing larger numbers of virtual users, CloudTest enables test designers to easily control which parts of a complex test composition will run from which physical Maestro server.
Reuseable Test Clips
The building block of testing in CloudTest is the Test Clip. A test clip is a visual script that is composed of a series of timed or sequenced events (an event can be, for example, an http message, a SOAP message or a UI event in a browser). Once built and debugged, these test clips can be reused for any type of testing . . . functional testing, load testing, performance testing and Web UI testing where appropriate. This is a very powerful feature of the CloudTest design that can substantially improve the productivity of a testing team.
Ajax-based User Interface
CloudTest has an Ajax UI that can be accessed from all major Web browsers. Internet Explorer 7.0, Firefox 2.0 and Safari 3.0 are all certified to run the CloudTest Web UI. Cross browser support enables your testing team to create, run, and analyze test results – from anywhere in the world, at anytime. CloudTest allows geographically distributed teams to collaborate and leverage their testing resources to achieve a high quality result that everyone can immediately share.