Fixing a bug in one area of the software may break something in another area. To detect whether defects have been introduced, we need to perform regression testing—executing certain test cases again to see whether a change has affected other existing features. But how do you make time for another testing cycle prior to every production release? You need to get QA involved earlier in the software development lifecycle.
The advantages of shifting left and testing as early as possible are obvious. But as you automate more testing, the test suite grows larger and larger, and it takes longer and longer to run. Instead, just automate the process of finding the right set of tests to run. The key to that is machine learning. This isn't AI bots finding bugs autonomously without creating tests; this is a different way to use machine learning, and it’s far simpler.
Pretty much everything you hear about DevOps mentions “the pipeline.” Continuous delivery is not really about the pipeline, however. Continuous delivery is about two things: testing strategy and branching strategy. The pipeline is important; it is an integral part of DevOps. However, the central element is the practice of testing continually using automated tests.
Shifting your testing either left or right can meet different needs and improve different aspects. How do you know whether to make a change? Let your test cycles be your guide. Just like when driving a car with a manual transmission, if the engine starts to whine or you’re afraid you’re about to stall out, switching gears may be just what you need.
In this interview, Angie Jones, a consulting automation engineer, explains what it means to shift your testing left, why management if often in control of how it’s done, and why testers already have the right skills to test earlier in the lifecycle.
In this interview, Adam Auerbach, the senior director of technology for advanced testing and release services for Capital One Financial Corporation, shares his company's experience implementing continuous testing and describes its core principles.
In this interview, Shankar Konda from TCS discusses the long-term viability of the shift-left movement, how to achieve the best returns when abiding by shift-left principles, and how DevOps and continuous integration fit in to the shift-left world.
DevSecOps uses application security practices that have existed for a while. The innovation of DevSecOps is incorporating security into the daily workflow of the team rather than leaving it to the end, shifting security left by automating aspects of security testing.
The concept of “shifting testing left” in the software development lifecycle is not new. Shifting testing from manual to automated and then upstream into engineering is a driving factor in DevOps and agile software development. However, Michael Nauman wonders why test automation...