In a large multi-site OpenStack Cloud environment, we have been testing the building blocks in all layers for two year now. We test these blocks individually as well as test end-to-end flows across them.
The building blocks that need to be tested include hardware, OS/VMMs, OpenStack, Contrail, other software, and IT tools. These blocks are tested using their APIs, CLIs or GUIs.
We have automated a significant part of our testing using open source tools. We leverage Tempest for testing OpenStack. API tests for non-OpenStack components and extensions to Tempest (e.g., testing scenarios) are automated using OpenStack plugins. We have been automating CLI tests using TestInfra and we have also been considering Puppet Facter. We have automated testing of OpenStack Horizon and other GUIs using Selenium.
In addition describing our automation, we will share information on the number of tests we perform, our extent of automation and the benefits we have seen as well as some challenges.
The attendees will learn the following:
- The requirements for testing all components of a large, multi-site OpenStack managed Cloud that has been in production for 2+ years.
- The need for automated testing.
- Automation of API testing using Tempest plugins with detailed examples.
- Options for automating CLI testing with an in-depth look at TestInfra.
- Automation of GUI testing using Selenium with examples.
- The features supported by our Cloud and the numbers of test cases to be executed to effectively test our Cloud.
- Where we are in our automation journey, the benefits we have seen so far and the challenges we have faced.