Welcome!

@CloudExpo Authors: Liz McMillan, Jason Bloomberg, Pat Romanski, Ed Featherston, Elizabeth White

Related Topics: @CloudExpo, Containers Expo Blog

@CloudExpo: Article

Testing Considerations for Application Migration to Cloud Computing

Cloud application testing

Cloud computing adds a new dimension to conventional models of testing services delivery. Gartner highlights the five attributes of cloud computing as service-based, scalable and elastic, shared, metered by use, uses internet technologies (1). Cloud computing characteristics such as virtualization, on-demand scale up/down of infrastructure resources, self service capabilities and pay per use pricing models are allowing cloud platform vendors to provide infrastructure and software services at lower costs to organizations utilizing cloud computing services (2).

There is a growing trend of organizations taking up cloud computing initiatives to consolidate infrastructure that is geographically spread in multiple data centers to a single cloud platform vendor. Minimizing upfront infrastructure investment, ability to scale up/down quickly, high availability and disaster recovery are the other key factors contributing to early cloud adoption. Organizations are interested in having greater visibility into how infrastructure resources are consumed, aligning infrastructure needs to actual demand and lowering infrastructure management and support costs. Organizations should be aware of the application considerations for migration to cloud platforms to ensure a smooth transition to cloud environment (3).

Testing considerations and focus areas
The following are the key considerations that are helpful in locating areas that would require focus during test planning:

  • Application changes and on-premise interfaces - Moving an application to the cloud may require changes to the application to suit with the environment available on the cloud platform. For example, if the application is running on Solaris on-premise and the operating systems available on the cloud platform are RedHat Linux and Suse Linux, the application will require additional testing on the cloud platform. In addition, requirements such as authentication against on-premise active directory and new interfaces built with on-premise systems lead to additional areas for application testing.
  • Data migration - The data migrated from on-premise to cloud to take advantage of the storage services available on the cloud platform for additional storage needs, backup and archival requires new test cases to be developed as part of test planning.
  • Security - Organizations may decide to enforce access to application features utilizing on-premise user directories for authentication and authorization. In addition, web applications being migrated from with-in the firewall to a public internet on cloud require transport security mechanisms such as SSL. Data stored in cloud storage may have to be encrypted for security and compliance needs. The best practice is to secure the data in transit as well as the data at rest (4). Security testing of these new features has to be incorporated in to overall test planning.
  • Performance - The application needs to be load and stress tested on the cloud platform to ensure that system response is as per SLAs. As cloud platforms are often used for consolidating infrastructure in multiple regions to a specific region, special attention is needed to ensure that system performance is at optimum levels. This will require testing the latency in system response in comparison to response from on-premise environment for taking appropriate steps for performance improvement.
  • Scalability - Applications are usually migrated to cloud to take advantage of the elasticity features provided by cloud platforms for quick ramp up/down of computing resources to align with actual demand. The ability of the cloud environment to meet the on-demand needs of the application requires careful planning of the test scenarios and load for performance testing.
  • Availability and Disaster Recovery - Load balancers and elastic computing features for auto-provisioning play a critical role in ensuring high availability on the cloud. The ability of the cloud environment to withstand peak load and server failures has to be tested prior to releasing the application for producing use. Cloud platforms such as Amazon EC2 allow placing multiple instances in different availability zones in a region to protect applications from failure of a single location (5). The availability of the application has to be tested by simulating the failure of an application instance in a location. Also, data recovery mechanisms in place have to be tested for ensuring proper disaster recovery.

Cloud computing aspects conducive to testing
Testing an application being migrated to a cloud platform requires the test environment to be setup in the cloud environment. The following are some aspects of cloud computing that are conducive for setting up test environments on cloud platforms:

  • Reduce the lead-time for procuring infrastructure - Less time to provision infrastructure resources using self-service interfaces
  • Optimal use of hardware resources - In-house test environments require hardware, which most of the time goes unused. With cloud, the resources can be scaled  up or down to keep pace with demand which leads to efficient utilization of resources
  • Pay-per-use - With cloud, there is no need to budget for extra hardware. Additional resources can be procured easily for the test environment using pay per use models
  • Quick resource ramp-up - Cloud is ideal for quickly ramping up resources for the following testing needs: Testing an application on multiple operating systems, multiple browser types and multiple software versions (JVM, App Server etc.)
  • Setting-up multiple test regions - Cloud makes it cost-effective for creating separate test regions for system testing. Often, minimal infrastructure is enough for testing functional aspects of an app location. Large infrastructure needed to simulate production environment can be procured quickly for the duration of testing
  • Reduce software licensing costs - On-demand testing tools on cloud are cost effective and the pay per use models provide relief from costly one-time licensing of testing tools (6)

Enhancements to Testing Methodology for Cloud Testing
The enhancements proposed to the conventional software testing methodology are based on our experience with deploying and testing J2EE, .Net applications, and commercial as well as open source packages on Amazon EC2 and Microsoft Azure cloud platforms.

A typical cloud testing methodology is comprised of the following phases: Test Planning, Test Design, Cloud Setup, Test Execution, Remediation and Closure. The methodology for testing applications on the cloud platform requires additional activities in the following phases:

  • Cloud Setup - The setup of test environment on the cloud requires familiarity of the target cloud platform. Testing teams need training on key functions such as setting up a cloud account, provisioning cloud resources (Virtual Machines (VMs), storage, load balancers, software licenses). An understating of the cloud monitoring tools is essential to monitor system response and resource usage.
  • Test Execution - Based on the test requirements for the application, additional resources may have to be procured for computing as well as storage. For example, performance testing of the application will require a true representation of the production data for effective results. It may also require additional VMs to simulate computing support for handling larger loads. Testing application security will require understanding of the firewall rules, routing of requests and data access rules.
  • Closure - Cloud platforms provide storage at low cost and are ideal for archiving test cases, test results and test data. The VMs used for testing can be saved as images in cloud storage and can be restored later to recreate the test environment quickly for subsequent releases. Once the testing phase is complete, all the cloud resources can be released to keep the overall testing costs low.

Conclusion
Testing applications that are being migrated to the cloud requires a careful assessment of the testing considerations from the perspective of what application changes are undertaken for cloud deployment. This will help testing members in understanding application areas that need specific focus during testing on the cloud platform. In addition, knowledge of the cloud platform capabilities for scalability, availability and disaster recovery is useful for test planning. Testing teams should get acquainted with the cloud platform for accessing the test environment, monitoring and perform all test related activities. An understanding of the innovations cloud computing brings to testing services, especially test environment on the cloud and cloud based testing tools, will enable better utilization of the cloud computing capabilities by organizations for effective gains.

References

  1. Gartner Highlights Five Attributes of Cloud Computing, http://www.gartner.com/it/page.jsp?id=1035013
  2. The Five Characteristics of Cloud Computing, Maria Spínola, Cloud Computing Journal, http://cloudcomputing.sys-con.com/node/1087426
  3. Application Migration Considerations for Cloud Computing, Rajagopal Sattaluri, Cloud Computing Journal, http://cloudcomputing.sys-con.com/node/1686320
  4. Architecting for the Cloud: Best Practices, http://media.amazonwebservices.com/AWS_Cloud_Best_Practices.pdf
  5. Amazon Elastic Computing Cloud, Features - Multiple Locations, http://aws.amazon.com/ec2/
  6. HP and Amazon Web Services, http://aws.amazon.com/hp/

More Stories By Rajagopal Sattaluri

Rajagopal Sattaluri currently heads the Solution Architecture Team at Mahindra Satyam. He is a TOGAF certified enterprise architect. He has over 20 years experience in software development with expertise in Solution Architecture Consulting, Technology Evaluation, New Technology Research and Development, Product Development and Offshore Software Development. He is a staunch promoter of Agile, Cloud Computing and SOA. Rajagopal has a Masters degree in Management from North Carolina State University, USA and an under graduate degree in Computer Engineering from Andhra University, India.

@CloudExpo Stories
SYS-CON Events announced today that Cedexis will exhibit at SYS-CON's 21st International Cloud Expo®, which will take place on Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA. Cedexis is the leader in data-driven enterprise global traffic management. Whether optimizing traffic through datacenters, clouds, CDNs, or any combination, Cedexis solutions drive quality and cost-effectiveness.
SYS-CON Events announced today that Enroute Lab will exhibit at the Japan External Trade Organization (JETRO) Pavilion at SYS-CON's 21st International Cloud Expo®, which will take place on Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA. Enroute Lab is an industrial design, research and development company of unmanned robotic vehicle system. For more information, please visit http://elab.co.jp/.
SYS-CON Events announced today that Mobile Create USA will exhibit at the Japan External Trade Organization (JETRO) Pavilion at SYS-CON's 21st International Cloud Expo®, which will take place on Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA. Mobile Create USA Inc. is an MVNO-based business model that uses portable communication devices and cellular-based infrastructure in the development, sales, operation and mobile communications systems incorporating GPS capabi...
SYS-CON Events announced today that Suzuki Inc. will exhibit at the Japan External Trade Organization (JETRO) Pavilion at SYS-CON's 21st International Cloud Expo®, which will take place on Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA. Suzuki Inc. is a semiconductor-related business, including sales of consuming parts, parts repair, and maintenance for semiconductor manufacturing machines, etc. It is also a health care business providing experimental research for...
IBM helps FinTechs and financial services companies build and monetize cognitive-enabled financial services apps quickly and at scale. Hosted on IBM Bluemix, IBM’s platform builds in customer insights, regulatory compliance analytics and security to help reduce development time and testing. In his session at 21st Cloud Expo, Lennart Frantzell, a Developer Advocate with IBM, will discuss how these tools simplify the time-consuming tasks of selection, mapping and data integration, allowing devel...
Cloud-based disaster recovery is critical to any production environment and is a high priority for many enterprise organizations today. Nearly 40% of organizations have had to execute their BCDR plan due to a service disruption in the past two years. Zerto on IBM Cloud offer VMware and Microsoft customers simple, automated recovery of on-premise VMware and Microsoft workloads to IBM Cloud data centers.
Why Federal cloud? What is in Federal Clouds and integrations? This session will identify the process and the FedRAMP initiative. But is it sufficient? What is the remedy for keeping abreast of cutting-edge technology? In his session at 21st Cloud Expo, Rasananda Behera will examine the proposed solutions: Private or public or hybrid cloud Responsible governing bodies How can we accomplish?
SYS-CON Events announced today that Massive Networks, that helps your business operate seamlessly with fast, reliable, and secure internet and network solutions, has been named "Exhibitor" of SYS-CON's 21st International Cloud Expo ®, which will take place on Oct 31 - Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA. As a premier telecommunications provider, Massive Networks is headquartered out of Louisville, Colorado. With years of experience under their belt, their team of...
Many companies start their journey to the cloud in the DevOps environment, where software engineers want self-service access to the custom tools and frameworks they need. Machine learning technology can help IT departments keep up with these demands. In his session at 21st Cloud Expo, Ajay Gulati, Co-Founder, CTO and Board Member at ZeroStack, will discuss the use of machine learning for automating provisioning of DevOps resources, taking the burden off IT teams.
SYS-CON Events announced today that Nihon Micron will exhibit at the Japan External Trade Organization (JETRO) Pavilion at SYS-CON's 21st International Cloud Expo®, which will take place on Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA. Nihon Micron Co., Ltd. strives for technological innovation to establish high-density, high-precision processing technology for providing printed circuit board and metal mount RFID tags used for communication devices. For more inf...
SYS-CON Events announced today that mruby Forum will exhibit at the Japan External Trade Organization (JETRO) Pavilion at SYS-CON's 21st International Cloud Expo®, which will take place on Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA. mruby is the lightweight implementation of the Ruby language. We introduce mruby and the mruby IoT framework that enhances development productivity. For more information, visit http://forum.mruby.org/.
In his session at @ThingsExpo, Greg Gorman is the Director, IoT Developer Ecosystem, Watson IoT, will provide a short tutorial on Node-RED, a Node.js-based programming tool for wiring together hardware devices, APIs and online services in new and interesting ways. It provides a browser-based editor that makes it easy to wire together flows using a wide range of nodes in the palette that can be deployed to its runtime in a single-click. There is a large library of contributed nodes that help so...
SYS-CON Events announced today that Ryobi Systems will exhibit at the Japan External Trade Organization (JETRO) Pavilion at SYS-CON's 21st International Cloud Expo®, which will take place on Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA. Ryobi Systems Co., Ltd., as an information service company, specialized in business support for local governments and medical industry. We are challenging to achive the precision farming with AI. For more information, visit http:...
SYS-CON Events announced today that SIGMA Corporation will exhibit at the Japan External Trade Organization (JETRO) Pavilion at SYS-CON's 21st International Cloud Expo®, which will take place on Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA. uLaser flow inspection device from the Japanese top share to Global Standard! Then, make the best use of data to flip to next page. For more information, visit http://www.sigma-k.co.jp/en/.
SYS-CON Events announced today that Daiya Industry will exhibit at the Japan External Trade Organization (JETRO) Pavilion at SYS-CON's 21st International Cloud Expo®, which will take place on Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA. Daiya Industry specializes in orthotic support systems and assistive devices with pneumatic artificial muscles in order to contribute to an extended healthy life expectancy. For more information, please visit https://www.daiyak...
Today traditional IT approaches leverage well-architected compute/networking domains to control what applications can access what data, and how. DevOps includes rapid application development/deployment leveraging concepts like containerization, third-party sourced applications and databases. Such applications need access to production data for its test and iteration cycles. Data Security? That sounds like a roadblock to DevOps vs. protecting the crown jewels to those in IT.
SYS-CON Events announced today that B2Cloud will exhibit at SYS-CON's 21st International Cloud Expo®, which will take place on Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA. B2Cloud specializes in IoT devices for preventive and predictive maintenance in any kind of equipment retrieving data like Energy consumption, working time, temperature, humidity, pressure, etc.
Automation is enabling enterprises to design, deploy, and manage more complex, hybrid cloud environments. Yet the people who manage these environments must be trained in and understanding these environments better than ever before. A new era of analytics and cognitive computing is adding intelligence, but also more complexity, to these cloud environments. How smart is your cloud? How smart should it be? In this power panel at 20th Cloud Expo, moderated by Conference Chair Roger Strukhoff, paneli...
SYS-CON Events announced today that NetApp has been named “Bronze Sponsor” of SYS-CON's 21st International Cloud Expo®, which will take place on Oct 31 – Nov 2, 2017, at the Santa Clara Convention Center in Santa Clara, CA. NetApp is the data authority for hybrid cloud. NetApp provides a full range of hybrid cloud data services that simplify management of applications and data across cloud and on-premises environments to accelerate digital transformation. Together with their partners, NetApp em...
Most of the time there is a lot of work involved to move to the cloud, and most of that isn't really related to AWS or Azure or Google Cloud. Before we talk about public cloud vendors and DevOps tools, there are usually several technical and non-technical challenges that are connected to it and that every company needs to solve to move to the cloud. In his session at 21st Cloud Expo, Stefano Bellasio, CEO and founder of Cloud Academy Inc., will discuss what the tools, disciplines, and cultural...