DevOps and Software Testing:
Currently, in the Industry, more than 70% of software companies adopted DevOps and is increasing rapidly due to high scale penetration of build and integration tools to do seamless automation of Functional & Deployment deliverables across the software Development life cycle.
But with the increase in the Automation, AI & Machine Learning Advances, there seems to be much more coming in IT industry which can drastically speed up the process of delivery.
In this article Let’s find that out:
What is DevOps?
DevOps – a combination of Development & Operations – is a software development methodology which looks to integrate all the software development functions from development to operations within the same cycle.
This is a real coordination effort between Dev and QA and operation and QA to take the major share in the co-ordination of Delivery process.
Ideal DevOps cycle starts from:
- The developer writes the code
- Push the executables to the QA environment
- Executing test cases and finally
- Deploying on to Production in one smooth integrated flow.
this approach requires great emphasis on automation of build, deployment, and testing. Use of Continuous Integration (CI) tools, automation testing tools should be a norm in a DevOps cycle.
Changed Role of QA in DevOps
In a stone age, QA would get a build which is deployed on their designated environment and they would then commence their functional & regression testing. The build would ideally sit with the QA for a couple of days before the QA sign-off on the build. this is changing in DevOps.
QA changes for DevOps:
- QA are required to align their Automation efforts in the DevOps cycle.
- They have to make sure that all their test cases (Priority 1 & 2) are automated and achieve near 100% code coverage.
- They need to make sure that their environments are standardized and deployment on their QA boxes is automated.
- They need to make sure that there should be a subset of Automation test should Automatically run on the environment as a post build action when the build is triggered.
- All their pre- tasks, cleanups, post-testing tasks, etc. are automated and aligned with the Continuous Integration cycle.
DevOps in near Future for QA:
With the advancement of AI & Natural language processing, Today we have smart tool’s which can even help us to speed the process of delivery with the increase in quality of deliverables. With this tool, I think the operation and support will be automated completely and QA will be actively moving into not only Functional Deliverables of quality before deployment but also providing monitoring and support of production issues after post-deployment as well.
In some cases, QA needs to fix the small issues in production then redeploy and test the code there itself in order to reduce the downtime of fix and deploy in QA cycle.
QA in near future needs to have multiple Automation skills of Functional – Selenium for desktop and Appium for mobile, API Automation, Performance & Security Automation testing.
I see there won’t be separate team’s to do all this What I see in future is there would be centralized QA doing all of the functional, Integration and performance and Security and the Operational QA that supports Production.
So my friends never stop learning new things!!!..