Skip to Content

Approach to Automated Cloud Testing

Rohan Joshi
January 27, 2023

Everyone is moving to cloud these days. Some organizations were the early adopters and
are already reaping the benefits of cloud but a majority of them are still going through the
transition. While this transition takes place, there are always concerns about the cost,
scalability, tight deadlines etc. This makes testing during the transition extremely
important.

The cloud testing solution must cut across multiple phases of the cloud migration.
Broadly, it must address following areas:
• Landing zone validation
• Infrastructure testing
• Functional test execution

Before the migration activities can start, the cloud infrastructure needs to be provisioned.
But how to know if the provisioned infrastructure is as per the specifications or not? Well,
there is an option to manually verify every cloud resource but in large and complex
migrations this can be quite cumbersome. If this phase is automated, it would result in
much more accurate and faster landing zone validation. Terraform is popular IaaC software
these days for provisioning the cloud resources. A Terratest pipeline can communicate
with the provisioning pipeline for expected specifications and perform landing zone
validation in an automated manner. This is a DevOps compliant approach that can quickly
identify gaps during the early days of the migration activities thus providing a solid
foundation for the subsequent phases.

Successful completion of the landing zone validation is just the beginning. Next, the
migration activities follow. This is where the Infrastructure Testing comes in. With
induction of chaos experiments, the infrastructure can be tested for its ability to survive
attacks on CPU, memory, unexpected downtimes etc. and for its remediation abilities as
well. Successful completion of this phase can give the customers a lot of confidence about
the overall migration progress.
Finally, functional test execution can be triggered in 3 stages:

  1. Automated provisioning of test execution environment using Terraforms
  2. Execution of functional test scripts on the provisioned environment
  3. Automated destruction of the provisioned environment

By exploiting the pay-as-you-go benefits of cloud, the environment can be provisioned
only for the duration of the test execution, resulting in considerable reduction of the CapEx
cost.

Fig: Approach to automated cloud testing

The three-pronged approach of cloud testing illustrated in the above diagram can deliver
end-to-end high-quality testing at a reduced cost, with much lesser time and high
coverage.

About the author

Senior Manager | India
Rohan is a technical lead and architect within the Innovation tower in Sogeti Testing Practice. Rohan was instrumental in architecting a digital governance bot called ‘QuESt’ that leverages Azure bot framework, LUIS, MS Power Automate etc., enabled on MS Teams.

    Comments

    Leave a Reply

    Your email address will not be published. Required fields are marked *