Before we answer the question “what is cloud testing”, let us try to understand the basic concept of cloud based computing.
Cloud based computing is one of the latest technology buzzes. Using this new technology one can access computing resources such as RAM, Processing power, files hosted on the web. So for the end users it is a block box from where it is getting the resources. Just using a high-speed internet connection it can get it. Some of the top Commercial/Enterprise class Clouds are Amazon Web Services, Windows Azure, Force.com, Google AppEngine and maybe Rackspace.
What is cloud computing testing?
Cloud Testing is about running your tests on a distributed environment-which includes your datacenter and the cloud (for example, example Amazon EC2). Because of its distributed nature, it is also associated with (a) simulating millions of user levels (b) testing your application across multiple locations and (c) sometimes, a pay-as-you-go testing service.
There are three logical models for cloud testing at a high-level, in terms of where test traffic is initiated and where the target application is hosted. The three models are: using the cloud to generate test traffic outbound outside the cloud, using the cloud to generate test traffic into the cloud, generating test traffic from outside the cloud into the cloud. These models obviously transcend the use of services and tools.
How Cloud testing is different from normal testing?
In terms of testing types, there is no different from your normal testing. It comprises of test measures that are similar to what you are used to, like performance testing, testing functionality (such as testing APPS, web services and configurations), testing security and more.
Also the functional testing part is the same. If the app is deployed in a cloud or not, the functionality that has to be tested is the business functionality of the app.
For nonfunctional testing we need to check few things specific to the cloud such as all the basic services and ‘piping within’ the cloud: i.e., connectivity, directory services, fail-over, transaction monitoring, virtualization schema, load-balancing, etc.
Cloud computing test tools:
You need to use a mixture of tools during cloud testing. Some of the open source and commercial cloud testing tools are listed here. If you understand Cloud and understand how to launch virtual instances of machines, then you could your testing using any of the open source testing tools available like JMeter, Grinder and if it a simple web application, then even Apache AB would do. Also SOASTA cloud lite is a good tool.