DevOps is a newer methodology that is being adopted by a lot of businesses in the software development industry to allow them deliver new functionality to meet customer needs who are living in a world which is constantly demanding new technology. DevOps is a way for the business to try to stay ahead of competitors and be everything that the customer needs.
So, with this extension of Agile methodology being widely adapted by software businesses then it is wise to see how this impacts on the role of tester within the software delivery process. Testers are used to their cycles of regression in a Waterfall methodology to the testing during sprints within an Iterative methodology. So, with a methodology that is based on a Continuous process to integrate and deploy then were does a tester find the time to do testing activities to gain confidence in the functionality that is being developed by the team.
First off it is wise to get an understanding and an overview of the DevOps processes and how they are used within the software development world.
DevOps is another method of agile software delivery that allows development and testing to happen simultaneously. This allows the business to break down the barriers between Development and Operations allowing the business to meet the need for shorter and more frequent delivery times. Also, DevOps has allowed businesses to be able to respond to the continuing demands from customers to deliver the new functionality and deliver assets to let the company continue business growth.

There are 4 basic concepts of DevOps:
- Continuous Integration
- Continuous Delivery
- Continuous Testing
- Continuous Monitoring
These processes are the fundamentals to help deliver software using the DevOps methodology. Having these processes will allow the business to implement techniques to keep them ahead of the game.
Now its time to explore of the testing process and the testing role fits in to these new processes and how that may differ from the Agile methodology that we have become accustomed to over the last few years in the software industry. Testing in DevOps is moved from the end of the lifecycle to be a part of the full processes. The Developers and Environment Engineers deploy the code to the right environment to allows testers to carry out testing activities to ensure that the functionality has been delivered correctly and that the system/platform is still functioning as expected. Automated testing is developed and used as part of the pipeline steps as the code is passed into each environment. This will act as your regression testing to ensure that the core functionality of the system is still working as intended. Once the code for the functionality is deployed to the new environments for testing then the Testers are then able to verify that the new functionality is fits the defined criteria and carry out exploratory testing of the system to check for any regression bugs potentially missed by the automated tests but also to run scenarios that may outside of the normal processes.
Even though most of the testing activity does not seem much different from any other testing that is carried out in other methodologies the main difference is the need for a mature testing process with the correct skills and expertise in place. The need to have a defined testing strategy to outline the testing that is required in the DevOps processes is a recommended document to help the team to fulfil the accelerated speed of delivery. A Testing strategy alongside the correct expertise and skills in the testing roles will allow the process from a testing perspective.

Source: https://danashby.co.uk/2016/10/19/continuous-testing-in-devops/
As for the overall role of the tester within DevOps then nothing much is really changing. The tester is still making sure that the functionality is being delivered to the spec outlined and ensuring the system is functioning to the defined core functionality. The only difference is now that the development and testing roles are having to work closer and there is more of a bridge between the roles as developers must think more like testers to ensure bugs are squashed as they write their code and testers must think like developers at times to think of scenarios for testing to potentially suggest improvements to the codebase to increase the quality and make for a good user experience.
Detailed Explanation
LikeLike