Test Automation Glossary

shift-left testing


The process of moving testing earlier in the software delivery lifecycle so that defects can be identified and repaired before it becomes costly to fix them. The goal is to improve quality by moving QA tasks as early as possible.

Shift-left or right automated tests

For teams that primarily rely on manual QA just before release, this could involve creating a testing infrastructure so that source code branches could be tested while developers are working on features (e.g. with staging environments or builds). It might also involve creating automated tests that can run early in the development cycle.

For teams with automated tests and large test suites it may mean using subsetting techniques (manual test selection, test impact analysis, or predictive test selection) to make it practical to run tests earlier. For example, if you have a large test suite that takes 5 hours to run and only runs post-merge, moving a 30 minute subset pre-merge can help reduce the feedback delay for developers.

Shift-left can be an effective way to improve quality early in the development process. In contrast, shift-right is a similar concept, but instead of shifting tests earlier it is about pushing tests back after release or deploy.