Starting March 27, 2025, we recommend using android-latest-release
instead of aosp-main
to build and contribute to AOSP. For more information, see Changes to AOSP.
Retry isolation
Stay organized with collections
Save and categorize content based on your preferences.
See the Automatic Test Retry documentation
to understand how the retry feature works.
When executing retries, if the device has entered into a bad state
that does not allow tests to succeed anymore. Use the isolation
feature restore the device into a fresh initial
state and allow tests to run and succeed.
Enable the feature
The retry isolation can be enabled with the follow options in addition to the
retry options:
--retry-isolation-grade <FULLY_ISOLATED|REBOOT_ISOLATED>
or disabled with:
--retry-isolation-grade NOT_ISOLATED
The feature is disabled by default.
Different grade of isolation
The isolation grade represents the extent of the isolation we want to configure
between retries:
- FULLY_ISOLATED will completely wipe & resetup the device by rerunning the
configured target_preparers of the configuration
- REBOOT_ISOLATED will reboot the device
Note on Compatibility Test Suite (CTS)
Android partner runs of CTS currently do not support FULLY_ISOLATED
What do the results look like?
Result reporters receive a marker that a given module or run was running in
isolation and can elect to display the marker in their report.
- At the module level the
module-isolated
property will be set to its
isolation grade.
- At the run level the
run-isolated
property will be set to its isolation
grade.
For example: the first module running after being isolated will be reported as
module-isolated:FULLY_ISOLATED
.
A test run in isolation provides a strong signal. Be it pass or fail, the
test owner should have high confidence that no bad state from a previous
test was left on the device.
Content and code samples on this page are subject to the licenses described in the Content License. Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
Last updated 2025-06-12 UTC.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-06-12 UTC."],[],[],null,["# Retry isolation\n\nSee the [Automatic Test Retry documentation](/docs/core/tests/tradefed/testing/through-tf/auto-retry)\nto understand how the retry feature works.\n\nWhen executing retries, if the device has entered into a bad state\nthat does not allow tests to succeed anymore. Use the isolation\nfeature restore the device into a fresh initial\nstate and allow tests to run and succeed.\n\nEnable the feature\n------------------\n\nThe retry isolation can be enabled with the follow options in addition to the\nretry options: \n\n --retry-isolation-grade \u003cFULLY_ISOLATED|REBOOT_ISOLATED\u003e\n\nor disabled with: \n\n --retry-isolation-grade NOT_ISOLATED\n\nThe feature is disabled by default.\n\n### Different grade of isolation\n\nThe isolation grade represents the extent of the isolation we want to configure\nbetween retries:\n\n- FULLY_ISOLATED will completely wipe \\& resetup the device by rerunning the configured target_preparers of the configuration\n- REBOOT_ISOLATED will reboot the device\n\n### Note on Compatibility Test Suite (CTS)\n\nAndroid partner runs of CTS currently do not support FULLY_ISOLATED\n\nWhat do the results look like?\n------------------------------\n\nResult reporters receive a marker that a given module or run was running in\nisolation and can elect to display the marker in their report.\n\n- At the module level the `module-isolated` property will be set to its isolation grade.\n- At the run level the `run-isolated` property will be set to its isolation grade.\n\nFor example: the first module running after being isolated will be reported as\n`module-isolated:FULLY_ISOLATED`.\n\nA test run in isolation provides a strong signal. Be it pass or fail, the\ntest owner should have high confidence that no bad state from a previous\ntest was left on the device."]]