Automated Testing Cloud Services
About Cloud :
What is Cloud? Why the term has gained wide recognition in the software industry? There is one simple answer - "float with your belongings over the clouds".
Cloud computing brings to the fore, the idea of having our needful stuff on the go. If we go back in history we realise that things were not as easy as it is today. The IT industry has emerged as a trend. Cloud computing has almost eliminated device dependability.
It's crazy how technology is growing like a monster- a good one though. Cloud computing, specifically, has spread its wings all across the network, it has captured the heart and minds of the mass. IT has set up a benchmark , it has defined new standards of life.
Now let us understand how cloud computing is a breakthrough.
Idea behind Cloud :
"Whatever and Wherever you want", it is simply the availability factor that cloud solves. For instance I wish to access my photos while i'm on my way to some other place, I can simply have access to it on my phone with the help of cloud services.
We are quite familiar with applications like dropbox and many other similar applications that enables us to save our data in it and we can access it on our own devices from any place in the world.
The logic that applies to such a phenomenon is that the data is apparently available to us - desktop, laptop, mobile device etc. We just need to have that application on our devices through which we can have access to our personal information.
Types of Cloud Computing :
- Public clouds -These type of cloud services are accessible by anyone and from anywhere.
- Private clouds -These services are maintained within a security framework and is accessible via authentication. For instance , data to be used by employees within a company.
- Hybrid Clouds -This is a blend of both public and private cloud services. A company may want to grant access to few things to the public and keep the rest private.
Various cloud based Models :
- SaaS -Software as a Service. This is a type of service wherein a software application is available on the internet. Examples - online photo editing tools, photoshop, gmail, google docs etc.
- Iaas -Infrastructure as a Service. It consists of physical resources such as storage devices,computer servers etc.
- Paas -Platform as a Service. This refers to a platform or environment that enables us to perform some task over the network. VM is an example of Paas, we can download virtual machine pertaining to a specific operating system(xp,linux etc.).
Need of automation testing in Cloud :
There can be no deployment of a software product unless it has passed through efficient quality check. Same applies to cloud services.
There are various testing tools available to ensure that cloud applications deliver the desired performance expected from it. It has to pass through various forms of testing- performance, load, functional, security.
Here is a list of some of the automation tools for the purpose of web and mobile based application testing .
- SOA STA Cloud Test - This is an automation tool which eases the task of testing web and mobile based functional and performance testing.
- LoadStorm - It checks how a web and mobile application performs when there are a lot of users or there is a lot of traffic. This provides support for many number of users.
- BlazeMeter - This has Jmeter compatible and facilitates real time load and performance testing.
- Nessus - It is a tool to detect if the application is prone to any kind of vulnerability, identifies mis-configurations , if any, missing aspects in firewalls, cloud infrastructure etc. This helps to detect the presence of any malware, viruses and any other malicious content.
- App Thwack - A cloud based simulator for testing a variety of applications- Android, iOS and web apps . It is also compatible with various other automation tools. It supports multi-platform test, and also provides the option of customizable testing.
- Jenkins Dev Cloud - This cloud testing tool enables continuous development,deployment and integration on the cloud. A developer has the option to work on any language of their choice. It also avails third party components like Google App Engine, Cloud Foundry, AWS Elastic Beanstalk.
- Xamarin Test Cloud - A testing tool for mobile apps, a UI acceptance testing tool. One can write test cases in C# or Ruby using Nunit library framework or Calabash framework, respectively. It generates an optimized output regarding CPU and memory usage and time consumed to accomplish the test.
Automation eases the process of assessing the efficiency of cloud based implementation of various mobile and web apps. Testing definitely enhances the reliability of a software application by performing a detailed analysis . An application is thus proved to be a robust one in the cloud framework.
Benefits of cloud based Automation testing tools :
- Cost Effective - Cloud based testing tools are not highly expensive rather the test components are reusable. They are efficiently capable of carrying out load and performance testing. Cloud based tools saves the cumbersome process of installation, licensing, and system upgrades.
- Virtualization - Cloud computing is interchangeably used with this term. It is so in the form of shared resources . As applications become complex in nature, it doesn't become a burden rather it eases the process of testing.
- Collaborative Effort - as the term cloud states, the resources are spread over a network. It's a very systematic approach in the event of managing and accessing resources from different locations.
- Automation makes it quick - automation tools certainly mitigates the time required to carry out testing.