DevOps is not a methodology or a suite of tools but it is a concept to dismiss the barriers between Dev and Ops in order to meet the need for shorter and more frequent delivery timelines.
In DevOps, the organization responds in a more agile manner to changing business requirements. In this concept, systems engineers, release engineers, DBAs, network engineers, and security professionals in the “Ops” branch seamlessly integrate with developers, QA, business analysts, and product engineers in the “Dev” branch into a single value IT entity.
There are four basic continuous processes in DevOps:
- Continuous Integration
- Continuous Delivery
- Continuous Testing
- Continuous Monitoring
In DevOps, testing is not at the end of the release cycle — it is now brought into the mainstream/beginning of development cycles. Developers and system engineers get the code in the right environment for Continuous Integration and Continuous Delivery and those stakeholders enable Continuous Testing and Continuous Monitoring processes in which QA engineers then validates that the team has built the right application, by seeing and testing if it functions and performs as designed.
It is a fundamental role for testing teams to align their test design, test automation, and test case development with DevOps — not only to verify that code changes work but that the changes do not break the product. A key differentiator of DevOps is testing maturity. An organization can automate their integration, testing, delivery, and monitor it, but still have issues with the intelligence of test orchestration and automation, which can lead to a bottleneck if this is not resolved beforehand.