Manish Kanal, Intel Security
In a typical enterprise software management solution, where the client is multi-component software interacting with a central management server to get its management instructions. Such solutions have been typically on-premise so far, but have started the importance to being on the cloud lately. The intrinsic values of any cloud solution are reduced cost and increased agility. These could be effectively realized only by automation, which is generally used for quick validation, field deployments, and monitoring purposes. The test and deployment automation frameworks, which served the on-premise models so far, cannot be used as-is for the cloud solutions. Maintaining two different frameworks would lead to lots of duplicity of efforts and code. In this paper we discuss our learnings as to how we extended our existing on-premise automation framework to effectively support cloud too. A server based automation approach may not be effective in this case as it depends upon server initiated actions, which won’t always from the cloud. It also provides for limited validation of the critical client software, and its integration with multiple products managed by it.
A more practical approach to solve this problem would be to drive the solution automation from the client and exercise server actions remotely. This will allow us to test the client thoroughly, right up to the component level, while also validating the server functionalities relative to the client. This approach also enables us to include non-functional aspect of testing like performance, scalability, and security testing into the framework.
We may need to supplement this approach with a server specific automation framework, which can focus on UI validation and other server components.
In this paper, we discuss in detail how we used this approach to automate the testing of our cloud solution and the challenges we overcame to make our existing automation framework cloud ready.
Target Audience: Expert/Advanced
2016 Technical Paper, Manish Kanal, Paper, Slides, Notes, Video.