With the rise of DevOps, programmable infrastructure is reaching widespread adoption. However, although automated testing of software is becoming more common, the same cannot be said of testing cloud infrastructure automation.
With microservices making our deployments more and more complex, we can no longer afford to ignore this type of testing. This session will take a tour through some approaches to programmable infrastructure testing that we have created, from the perspective of a project that required functional testing of infrastructure.
The main part of the case study is a 'from the trenches' experience about building a cloud broker. Specifically, because the functional requirement of the application was infrastructure, we had to think about how to test cloud infrastructure - in an automated fashion. I'll discuss the tools we chose, how we divided up the tests, and some short examples of the kind of tests we built.
There is some code, but largely this is a session about test strategy, tool selection, how to build a test framework, and cultural issues faced. The point is that if you're building code - or anything complex - it pays to test it, particularly in an automated fashion. DevOps requires ops to adopt software engineering practices, and testing is a software engineering practice!
Matt is a QA consultant for OpenCredo, a London-based consultancy specialising in helping clients build and deploy emerging open-source technologies. He is responsible for the testing requirements in a number of OpenCredo engagements, with specialist knowledge in the creation and deployment of automated testing frameworks. Matt works with tools such as Java, Selenium, Cucumber, Ruby and Gatling. He builds and maintains a machine learning foosball bot in his spare time.