Software testers face a constant dilemma: software grows, but release cycles shorten, leaving less time for testing. »Shift Left« promises a solution, aiming for earlier, more frequent testing. But extensive end-to-end test suites can take hours or weeks, making this infeasible. Luckily, Test Selection offers a proven solution.
The key idea is to run only a small, highly effective subset of your full test suite. We design this subset to require only a fraction of the full suite’s runtime, while concentrating a significant amount of bug-finding power.
While such a small subset may not reveal all bugs, it finds most of them much faster. And when we run this smaller subset frequently, in addition to less frequent full test runs, we get rapid feedback on the majority of bugs without missing crucial issues. This even enables running tests on feature or developer branches, where end-to-end tests were previously uneconomical, further accelerating development.

We tested many Test Selection approaches to find those that deliver good results and are easily applicable at scale, even in legacy industry projects. Our Software Quality Platform Teamscale implements the best approaches to help our customers regain fast feedback from their tests.
Quality Gates vs. Change-Based Testing
In working closely with dozens of teams, we found two main use cases for Test Selection.
Quality Gates: We select a fixed set of tests to run repeatedly over a longer period of time (weeks, months), allowing us to protect valuable resources, such as:
- Expensive test runs. To avoid wasting costly test runs on high-level bugs that may mask many other bugs, only software versions passing our quality gate proceed to expensive testing, thereby reducing execution costs.
- Integration branches. To ensure stable shared branches, only changes passing the quality gate are merged, preventing buggy code from hindering team productivity.
Change-based Testing: We select a different set of tests for every test run, specifically for the code changes under test. This is more precise, especially for smaller changes. However, it requires a more complex setup to dynamically incorporate change information.
We can even combine both strategies, e.g., by using quality gates before full test runs and change-based testing on feature branches and pull requests for thorough, rapid feedback and comprehensive quality assurance.
Build a Quality Gate with AI Vector Embeddings
End-to-end test suites, often grown through years of copy-and-paste, typically contain numerous similar tests. To identify high-level bugs, we run only one test from each cluster of such similar tests, i.e., we run the most dissimilar tests. This allows us to cover significant software functionality with fewer tests, increasing our chances of finding bugs throughout the software system.
Technically, we represent tests as numerical vectors in a multi-dimensional space, leveraging Large Language Models (LLMs) to generate embedding vectors that capture the semantic meaning of your tests. This works directly on the source code of your automated tests from your version control system (VCS) or on manual test instructions from your Application Lifecycle Management (ALM) system. We then select the test cases that are “furthest apart” in the vector space, to ensure a diverse and non-redundant subset.

Our experiments on open-source and industry systems show that this approach enables teams to find 90% of bugs in just 13% of the full test suite’s runtime. This enables you to turn a long-running and expensive test suite into a quality gate that you can quickly run before every merge.
Test Change-based with The Power of a Search Engine
We can improve further by selecting tests specifically for the changes under test, which we extract from your VCS. From these changes, we generate a search query, by extracting relevant terms (e.g., »search«, »login«, »user«) from modified functionalities. Leveraging existing search engine research, we index your tests (automated test source code or manual test instructions) into a searchable database. Then we query this database, to compute a ranked list of tests, with the most relevant ones at the top, much like Google finds you the most relevant websites. Given your test budget, e.g., 15 minutes, we then run the most relevant tests that fit into this time.
Our experiments on open-source and industry systems show that this approach enables teams to find 90% of bugs in just 4% of the full test suite’s runtime. This may transform even a once-a-week test run into fast, per-pull-request checks, ensuring thorough testing very early on. The only downside, compared to a quality gate, is the increased setup effort, as your test runner or manual testers need to query for the relevant tests at the start of each test run.
Summary

The imperative to »Shift Left« requires smarter testing strategies. Test Selection enables you to run smaller, yet highly effective, subsets of your tests more frequently, thereby accelerating feedback on most bugs. Teamscale offers Test Selection to build quality gates (to protect resources like shared branches or costly test runs) as well as to test specific changes (for rapid feedback on pull requests or feature branches). Both approaches, or a combination, enable »Shift Left« even for extensive end-to-end test suites, ensuring faster feedback and higher software quality without increasing testing costs.
Would you like to dive in deeper? Reach out or visit our Teamscale booth at EuroSTAR 2026!
Author

Johannes Veihelmann
Johannes Veihelmann is a consultant of CQSE GmbH for software quality. He obtained his Bachelor of Science degree in Bioinformatics and is part of the Test Intelligence Team. There he helps customers daily to successfully set up Test Selection analyses.
CQSE are a participating in EuroSTAR Conference 2026 as an exhibitor






















