Author: Necip ARIKAN, Senior System Test Engineer – Licensing Project
According to Wikipedia,
“Cloud Testing is a form of software testing in which web applications that leverage cloud computing environments (“cloud”) seek to simulate real-world user traffic as a means of load testing and stress testing web sites. The ability and costs to simulate web traffic for software testing purposes has been an inhibitor to overall web reliability.” 
Cloud testing is a new approach of software testing, which simplify infrastructure set up, reduces expensive hardware and software costs and effort consumption. Cloud testing can be thought as “alternative to the traditional software testing process”.
Cloud testing is defined as TaaS, Testing as a Service. This testing includes both functional testing, including redundancy and performance scalability, as well as non-functional testing, including security, stress, load, performance and interoperability of numerous applications and products. Cloud testing is not testing the cloud.
Cloud Testing has three goals.
- To ensure the quality of cloud based applications deployed in a cloud, including their functional services, business processes, and system performance.
- To validate software as a service (SaaS) in a cloud environment, including software performance, scalability, security and measurement based on certain economic scales and pre-defined service level agreements (SLA).
- To test cloud compatibility and inter-operation capability between SaaS and applications in a cloud infrastructure, for example, checking the APIs of SaaS and their cloud connectivity to others. 
Cloud Test Architecture depends upon the organizations work procedure. When we talk about cloud testing, we need to understand that virtualization is the basic building block for cloud offerings. Generally, there are three key actors involved in a cloud procedure: service developer, consumer and provider. Service developer develops the application and deploys in the cloud. The services are then consumed by the end users and the cloud providers are responsible for managing and provisioning the cloud infrastructure. All of these actors will access the cloud through the series of access points for example, an API or a UI. 
Cloud Testing Model
TaaS concept was initially introduced by Tieto in Denmark in 2009.
The TaaS Architecture consist of various layers through which the testing is done. The client may access the platform in two ways either Online or In Person. The client can use the platform in three ways as follows;
- Client have to upload the application on cloud and test it with the help of their own tester. And have to pay for the tools provided by cloud for testing purpose.
- Client can upload the application on cloud and ask to other company to test the application and pay for the usage.
- Client may directly go through the testing company for testing the application without uploading the application on cloud. 
The main thing that needs to be considered is that the organizations have to choose the most reliable service provider who can keep the information totally secured. Customers can choose hybrid cloud to get benefit the cloud computing; private cloud for confidential data and public cloud for other data. In addition, migration needs to be done with proper planning and they need to check the right vendor who fits their business needs and those providing a proper service level agreement. For most of the organizations, 100% cloud is not feasible; it highly depends upon the business and their project types.
 J. Gao, X. Bai and W. T. Tsai, “Cloud Testing – Issues Challenges Needs and Practice,” Software Engineering: An International Journal, no. 1, vol. 1, pp. 9-23, 2011.
 Y Liu, “Testing as a Service over Cloud,” In the Fifth IEEE International Symposium on Service Oriented System Engineering, 2010
 Testing as a service-An enhanced security framework for TAAS in cloud environment. Paper by K.V.Arunkumar & E.Samlinson