Cloud testing is a form of software testing in which web applications use cloud computing environments to simulate real-world user traffic. Cloud Testing uses cloud infrastructure for software testing.
What is cloud computing?
In the simplest terms, cloud computing means storing and accessing data and programs over the Internet instead of your computer’s hard drive.
When you store data on–or run programs from the hard drive, that’s called local storage and computing.
Cloud computing is the delivery of computing as a service rather than a product, whereby shared resources, software, and information are provided to computers and other devices as a utility (like the electricity grid) over a network (typically the Internet). Clouds can be classified as public, private or hybrid.
Organizations pursuing testing in general and load, performance testing and production service monitoring in particular are challenged by several problems like limited test budget, meeting deadlines, high costs per test, large number of test cases, and little or no reuse of tests and geographical distribution of users add to the challenges.
Leading players, such as Amazon, Google, IBM, Microsoft, and Salesforce.com offer their cloud infrastructure for services.
Some of the major requirement of Cloud testing
Sufficient test models and criteria
Proper test methods and solutions
Types of Testing Supported
Importance of Cloud Testing
Reduce costs by leveraging with computing resources in clouds
Advantage of on-demand test services (by a third-party) to conduct large-scale and effective real-time online validation for internet-based software in clouds.
Easily leverage scalable cloud system infrastructure to test and evaluate system performance and scalability.
Benefits of Cloud testing
Testing is a periodic activity and requires new environments to be set up for each project, it reduces its capital and licensing expenses as much as using virtualized resources.
Reduce operating and labor costs by automating development and testing resource provisioning and configuration
Shorten its development and testing setup time from weeks to minutes.
Improve product quality and reduce the detected defects
Different Forms of Cloud-Based Software Testing
Basically there are four different forms of cloud-based software testing.
Testing a SaaS in a cloud – It assures the quality of a SaaS in a cloud based on its functional and non-functional service requirements.
“SaaS – Software as a service is a software licensing and delivery model in which software is licensed on a subscription basis and is centrally hosted”
Testing of a cloud – It validates the quality of a cloud from an external view based on the provided cloud specified capabilities and service features. Cloud and SaaS vendors as well as end users are interested in carrying on this type of testing.
Testing inside a cloud – It checks the quality of a cloud from an internal view based on the internal infrastructures of a cloud and specified cloud capabilities. Only cloud vendors can perform this type of testing since they have access es to internal infrastructures and connections between its internal SaaS(s) and automatic capabilities. Only cloud vendors can perform this type of testing since they have accesses to internal infrastructures and connections between its internal SaaS(s) and automatic capabilities, security, management and monitor.
Testing over clouds – It tests cloud-based service applications over clouds, including private, public, and hybrid clouds based on system-level application service requirements and specifications. This usually is performed by the cloud-based application system providers.
Cloud Test Environments:
There are three types of cloud test environments:
A cloud-based enterprise test environment, in which application vendors deploy web-based applications in a cloud to validate their quality in a cloud infrastructure.
A private/public cloud test environment, in which vendors deploy SaaS applications. SaaS in a private (or public) cloud to validate their quality.
A hybrid cloud test environment, in which vendors deploy cloud-based applications on a hybrid cloud infrastructure to check their quality.
Various Cloud Testing Environments
“Cloud testing basically aligns with the concept of cloud and SaaS. It provides the ability to test by leveraging the cloud, thereby bringing the same benefits that the cloud brings to customers….”
(by Vinita Ananth, Director – APJ Region, HP Software-as-a-Service).