Cut Test Time Up To 70% with

Predictive Test Selection

Gradle Enterprise Predictive Test Selection saves testing time by identifying, prioritizing, and running only tests that are likely to provide useful feedback during test runs. Predictive Test Selection accomplishes this by applying a machine learning model that uniquely incorporates fine-grained code snapshots, comprehensive test analytics, and flaky test data. It supports Gradle and Maven build tools.

Key Predictive Test Selection Benefits


Faster test feedback cycles

By avoiding test runs that are not adding value, 35-70% of test time for most builds can be saved without reducing test quality.


Improved DevProd and Developer Experience

Minimizing test time makes developers more productive and happier since they spend less idle time waiting for test feedback.


Lower development costs

Developer time saved translates directly into developer cost savings and lower cloud computing costs for hosted deployments.

Key Predictive Test Selection Components and Features

Predictive Test Selection Simulator

Before deployment you can simulate predictions by comparing against actual test results, allowing teams to decide which test sets should be optimized. These results can be inspected through the Predictive Test Selection simulation dashboard.

Flaky Test Mitigation Environment Awareness Proactive Risk Analysis
Predictive Test Selection fully leverages the breadth of test data captured by Gradle Enterprise, allowing it to filter flaky test outcomes from model training. This leads to highly accurate predictions. To train the model, Predictive Test Selection learns from changes to data inside and outside of the project repository file system, not just what is available from the version control system. Predictive Test Selection compares actual test results to simulated selection results, before you enable it, so you can fully understand the risks and benefits.

Test Selection Build Plugin

Predictive Test Selection seamlessly integrates with your Gradle and Maven builds, allowing you to configure it with Test Distribution and standardize how it is used in your organization. 

Fine-Grained Selection Control Seamless Integration Airgapped Data
Familiar build configuration options allow you to control how Predictive Test Selection acts at a per-test level. Predictive Test Selection is not bound to any IDE or VCS, and doesn’t dictate adjustments to your workflow to operate. Build however you want— it just works. Predictive Test Selection operates entirely within your infrastructure. Your sensitive project and test data never leaves your network.

Trends & Insights

Each Build Scan™ indicates exactly how Predictive Test Selection affected the build, including which tests were selected and why. The Predictive Test Selection dashboard visualizes usage and savings for a custom set of builds and test runs. In this report you will see the productivity impact reflected in the test performance trend chart.

Model Accuracy Interpreted Predictions Unparalleled Insights
Predictive Test Selection can predict more than 99% of all test run failures and avoid most irrelevant tests. Build Scan logically explains why each test was selected or not, so you can have confidence in predictions. Gradle Enterprise is uniquely able to leverage detailed code and dependency data, which gives our model unparalleled insight into production sources and related tests.

How it Works

  1. When a test run starts, Gradle Enterprise submits a test input snapshot and test set to a machine learning model.
  2. Gradle Enterprise automatically develops a test selection strategy by learning from historical code changes and test outcomes from your Build Scan™ data to predict a subset of relevant tests, which are then executed by your build.
  3. Code change and test results data are processed immediately after a Build Scan is uploaded to Gradle Enterprise and updates the test selection strategy based on new results.

Combine Predictive Test Selection with other Performance Acceleration Technologies for a Force-Multiplier Effect

While Predictive Test Selection does not depend on other Performance Acceleration technologies available in Gradle Enterprise to deliver dramatic feedback cycle time improvements, combining Predictive Test Selection with other technologies can provide a force multiplier effect on feedback cycle times as illustrated below.

  1. Build Cache. Avoid unnecessarily running components of builds and tests whose inputs have not changed.
  2. Predictive Test Selection. Run only tests that are likely to provide useful feedback using machine learning.
  3. Test Distribution. Run the necessary and relevant remaining tests in parallel to minimize build time.
  4. Performance Continuity. Sustain Test Distribution and other performance improvements over time with data analytic and performance profiling capabilities.

Get started today

Request a 30-day free trial of Gradle Enterprise.
Free 30-day trial