Class Index

These are the API classes. See all API packages.


AaptParser Class that extracts info from apk by parsing output of 'aapt dump badging'. 
AaptParser.AaptVersion Enum of options for AAPT version used to parse APK files. 
Abi A class representing an ABI. 
AbiFormatter Utility class for abi. 
AbiUtils Utility class for handling device ABIs 
AbstractConnection Abstract connection representation. 
AbstractHostMonitor Typical class for Host Health Monitoring. 
AbstractTunnelMonitor Abstract tunnel monitor for GCE AVD. 
AbstractXmlParser Helper base class for parsing xml files 
AbstractXmlParser.ParseException Thrown if XML input could not be parsed 
AcloudConfigParser Helper class that parse an Acloud config (used to start a Cloud device instance). 
AcloudConfigParser.AcloudKeys Sets of key that can be searched from the configuration. 
ActionInProgress The general action in progress. 
ActiveTrace Main class helping to describe and manage an active trace. 
ActivityStatusChecker Status checker for left over activities running at the end of a module. 
AdbRootElevator An AutoCloseable that enables adb root when constructed if needed and restores root state when complete. 
AdbSshConnection Adb connection over an ssh bridge. 
AdbStopServerPreparer Target preparer to stop adb server on the host before and after running adb tests. 
AdbTcpConnection Default connection representation of a device, assumed to be a standard adb connection of the device. 
AdbUtils A utility class for adb operations. 
AfterClassWithInfo Similar guarantees as AfterClass but method annotated must require a TestInformation parameter. 
AggregatePostProcessor A metric aggregator that gives the min, max, mean, variance, standard deviation, total, count and optionally percentiles for numeric metrics collected during multiple-iteration test runs, treating them as doubles. 
AllTestAppsInstallSetup A ITargetPreparer that installs all apps from a IDeviceBuildInfo#getTestsDir() folder onto device. 
AltDirBehavior An enum to define alternative directory behaviors for various test artifact installers/pushers


AnalysisHeuristic Order is important. 
AndroidJUnitTest A Test that runs an instrumentation test package on given device using the 
AndroidTestOrchestratorRemoteTestRunner Runs an instrumented Android test using the adb command and AndroidTestOrchestrator. 
AoaTargetPreparer ITargetPreparer that executes a series of actions (e.g. clicks and swipes) using the Android Open Accessory (AOAv2) protocol. 
AppBuildInfo A IBuildInfo that represents an Android application and its test package(s). 
AppDeviceBuildInfo This class is deprecated. Use IDeviceBuildInfo directly. 
AppSetup A ITargetPreparer that installs an apk and its tests. 
AppVersionFetcher Utility class to get app version string from device. 
AppVersionFetcher.AppVersionInfo App version info types. 
ArchModuleController Module controller to not run tests when it doesn't match any given architectures. 
ArgsOptionParser Populates Option fields from parsed command line arguments. 
ArrayUtil Utility methods for arrays 
ArtChrootPreparer Create chroot directory for ART tests. 
ArtifactDetails This describes the structure of the content and its descriptor as generated by the CAS tool 
ArtifactsAnalyzer A utility that helps analyze the build artifacts for insight. 
ArtRunTest A test runner to run ART run-tests. 
ArtRunTest.AdbShellCommandException An exception class to report an error that occurred during the execution of an ADB shell command. 
ATestFileSystemLogSaver This LogSaver class is used by ATest to save logs in a specific path. 
AtestRunner Implementation of ITestSuite 
AtraceCollector A IMetricCollector that runs atrace during a test and collects the result and log them to the invocation. 
AtraceRunMetricCollector Collects the traces from all the test directory under the given directory from the test device, log the test directory and post process the trace files under the test directory and aggregate the metrics. 
AutoLogCollector Enumeration describing which collector can automatically be handled by the harness. 
AutomatedReporters Class that defines the mapping from Tradefed automated reporters. 
AveragePostProcessor Implementation of post processor that calculate the average of the list of metrics. 


BackgroundDeviceAction Runs a command on a given device repeating as necessary until the action is canceled. 
BaseDeviceMetricCollector Base implementation of IMetricCollector that allows to start and stop collection on onTestRunStart( and ERROR(/#onTestRunEnd(,Map))
BaseEmulatorPreparer Common preparer for launching a local emulator. 
BaseHostJUnit4Test Base test class for running host JUnit4 style tests. 
BaseLeveledLogOutput A base implementation for ILeveledLogOutput that allows to filtering some tags based on their name or components. 
BaseModuleController Basic implementation of IModuleController that should be implemented for checking if a module should run or not. 
BaseMultiTargetPreparer Base implementation of IMultiTargetPreparer that allows to disable the object. 
BasePostProcessor The base IPostProcessor that every implementation should extend. 
BaseRetryDecision Base implementation of IRetryDecision
BaseStreamLogger<OS extends OutputStream> A ILeveledLogOutput that directs log messages to an output stream and to stdout. 
BaseTargetPreparer Base implementation class for ITargetPreparer that allows to control whether the object is disabled or not. 
BaseTestSuite A Test for running Compatibility Test Suite with new suite system. 
BatteryController Utility class that allows to control the battery charging state of a device. 
BatteryRechargeDeviceRecovery Allow to trigger a command when the battery level of the device goes under a given threshold. 
BatteryUnavailableDeviceRecovery Recovery checker that will trigger a configuration if the battery level is not available. 
BeforeClassWithInfo Similar guarantees as BeforeClass but method annotated must require a TestInformation parameter. 
BinaryState Enum used to record ON/OFF state with a IGNORE no-op state. 
BluetoothConnectionLatencyCollector The collector will push a pre-defined statsd duration metric config to devices and collect Bluetooth connection duration for each profile. 
BluetoothConnectionStateCollector This collector will collect BluetoothConnectionStateChanged metrics and record connection state number for each profile. 
BluetoothConnectionSuccessRatePostProcessor Implementation of postprocessor which calculates success rate for a bluetooth profile

Use "metric-key-match" to specify metrics which contain bluetooth connection states in numeric array Example [0, 1, 2, 3, 0, 1, 2, 3]. 

BluetoothHciSnoopLogCollector Collector to enable Bluetooth HCI snoop logging on the DUT and to collect the log for each test. 
BluetoothUtils Utility functions for calling BluetoothInstrumentation on device

Device side BluetoothInstrumentation code can be found in AOSP at: frameworks/base/core/tests/bluetoothtests 

BootstrapBuildProvider A IDeviceBuildProvider that bootstraps build info from the test device

This is typically used for devices with an externally supplied build, i.e. 

BootstrapServiceFileResolverLoader Loads resolvers using the service loading facility. 
Bugreport Object holding the bugreport files references, compatible of flat bugreport and zipped bugreport (bugreportz). 
BugreportCollector A pass-through ITestInvocationListener that collects bugreports when configurable events occur and then calls ITestInvocationListener#testLog on its children after each bugreport is collected. 
BugreportCollector.Predicate A full predicate describing when to capture a bugreport. 
BugreportzOnFailureCollector Collect a bugreportz when a test case fails. 
BugreportzOnTestCaseFailureCollector Collect a bugreportz when a test case in a run fails. 
BuildAnalysis Represents the results of a single build analysis. 
BuildError Thrown if the provided build fails to run. 
BuildInfo Generic implementation of a IBuildInfo that should be associated with a ITestDevice
BuildInfoKey Class holding enumeration related to build information queries. 
BuildInfoKey.BuildInfoFileKey Enum describing all the known file types that can be queried through IBuildInfo.getFile(
BuildInfoRecorder An ITargetPreparer that writes build info meta data into a specified file. 
BuildInfoUtil A util class to help manipulate IBuildInfo 
BuildRetrievalError A fatal error occurred while retrieving the build for testing. 
BuildSerializedVersion Class that contains the current serialization version of all IBuildInfo
BuildTestsZipUtils A helper class for operations related to tests zip generated by Android build system 
BulkEmailer A email sender utility that allows the following configuration: sent interval,initial burst size, recipients and the total number messages. 
BundletoolUtil Utility class that uses bundletool command line to install the .apks on deivce. 
ByteArrayList A class to represent a lightweight byte array. 
ByteArrayUtil Utilities to operate on byte array, e.g., convert bytes to integer. 
ByteStreamDownloader A client implementing the Read method of the ByteStream gRPC service. 
ByteStreamUploader A client implementing the Write method of the ByteStream gRPC service. 


CarModuleController This controller prevents execution of tests cases on non-automotive devices. 
CarryDnaeError Internal RuntimeException to carry DeviceNotAvailableException through the JUnit4 framework. 
CarryInterruptedException Thrown when test phase timeout is triggered and an InterruptedException needs to be carried from test execution thread to invocation execution thread. 
CdmaDeviceFlasher A class that flashes an image on a physical Android device with a CDMA radio. 
CecControllerTokenProvider Token provider for Consumer Electronics Control (CEC) related tokens. 
CentralDirectoryInfo CentralDirectoryInfo is a class containing the information of a file/folder inside a zip file. 
CheckPairingPreparer A CompanionAwarePreparer that verifies BT bonding between primary and companion devices 
Chunker Splits a blob into one or more Chunks of at most chunkSize bytes. 
Chunker.Chunk A piece of a blob. 
CircularAtraceUtil An atrace utility developed primarily for identifying the root causes of ANRs during Monkey testing. 
CircularByteArray Data structure for holding a fixed size array that operates as a circular buffer, and tracks the total sum of all values in the array. 
ClangCodeCoverageCollector A BaseDeviceMetricCollector that will pull Clang coverage measurements off of the device and log them as test artifacts. 
ClangProfileIndexer A utility class that indexes Clang code coverage measurements. 
ClassNotFoundConfigurationException ConfigurationException for when the class of an object is not found. 
ClassPathScanner Finds entries on classpath. 
ClassPathScanner.ClassNameFilter A IClassPathFilter that filters and transforms java class names. 
ClassPathScanner.ExternalClassNameFilter A ClassNameFilter that rejects inner classes 
ClassPathScanner.IClassPathFilter A filter for classpath entry paths

Patterned after FileFilter 

ClockworkUtils A clockwork utility for sharing multi-device logic 
CloseableTraceScope A scoped class that allows to report tracing section via try-with-resources 
ClusterBuildInfo A IBuildInfo class for builds piped from TFC. 
ClusterBuildProvider A IBuildProvider to download TFC test resources. 
ClusterClient A IClusterClient implementation for interacting with the TFC backend. 
ClusterCommand A class that represents a task fetched from TF Cluster. 
ClusterCommand.State Command's status in the TF cluster. 
ClusterCommandConfigBuilder A class to build a configuration file for a cluster command. 
ClusterCommandEvent A class to encapsulate cluster command events to be uploaded. 
ClusterCommandLauncher A IRemoteTest class to launch a command from TFC via a subprocess TF. 
ClusterCommandScheduler A ICommandScheduler to support TFC (Tradefed Cluster). 
ClusterCommandStatus A class that represents the state and the cancel reason for a command from TF Cluster. 
ClusterDeviceInfo A class to encapsulate cluster device info to be uploaded. 
ClusterDeviceMonitor An IDeviceMonitor implementation that reports results to the Tradefed Cluster service. 
ClusterEventUploader<T extends IClusterEvent> ClusterEventUploader class, which uploads IClusterEvent to TFC. 
ClusterHostEvent A class to encapsulate cluster host events to be uploaded. 
ClusterHostEvent.HostEventType Enums of the different types of host events. 
ClusterHostUtil Static util functions for TF Cluster to get global config instances, host information, etc. 
ClusterLogSaver A ILogSaver class to upload test outputs to TFC. 
ClusterLogSaver.FilePickingStrategy File picking strategies. 
CodeCoverageTest A Test that runs an instrumentation test package on a given device and generates the code coverage report. 
CollectingByteOutputReceiver A IShellOutputReceiver which collects the whole shell output into a byte[]
CollectingOutputReceiver A IShellOutputReceiver which collects the whole shell output into one String
CollectingTestListener A ITestInvocationListener that will collect all test results. 
CollectorHelper Helper to do some IMetricCollector operations needed in several places. 
CommandBaselineSetter A common setter to handle device baseline settings via adb shell commands. 
CommandFileParser Parser for file that contains set of command lines. 
CommandInterrupter Service allowing TradeFederation commands to be interrupted or marked as uninterruptible. 
CommandLineBuildInfoBuilder Utility meant to capture the usual build information arguments from a command line and create a IBuildInfo from them. 
CommandOptions Implementation of ICommandOptions
CommandOptionsGetter Service implementation that returns the command options value of a given invocation. 
CommandResult Contains the result of a command. 
CommandRunner An alternate TradeFederation entry point that will run command specified in command line arguments and then quit. 
CommandRunner.ExitCode Error codes that are possible to exit with. 
CommandScheduler A scheduler for running TradeFederation commands across all available devices. 
CommandScheduler.HostState Enums of different status of host 
CommandStatus Represents the status of an timed operation. 
CommandStatusHandler Handler helping to monitor and update the status of an invocation. 
CommandSuccessModuleController Base class for a module controller to skip test module based on shell command failure. 
CommonLogRemoteFileUtil This utility allows to avoid code duplication across the different remote device representation for the remote log fetching logic of common files. 
CommonLogRemoteFileUtil.KnownLogFileEntry A representation of a known log entry for remote devices. 
CompanionAllocator Base class that takes care of allocating and freeing companion device

getCompanionDeviceSelectionOptions() should be implemented to describe the criteria needed to allocate the companion device 

CompanionAwarePreparer An ITargetPreparer that encapsulates the logic of getting an already allocated companion device. 
CompanionAwareTest Base test class that encapsulates boilerpate of getting and checking companion device

Subclass may call getCompanion() to retrieve the allocated companion. 

CompanionDeviceTracker A class for allocating and freeing companion devices 
CompanionRunCommandTargetPreparer A ITargetPreparer that runs specified commands on the allocated companion device 
CompanionTestAppInstallSetup A ITargetPreparer that installs one or more apps from a IDeviceBuildInfo#getTestsDir() folder onto an allocated companion device. 
CompileBootImageWithSpeedTargetPreparer Recompiles the boot classpath and system server with the compiler filter 'speed'. 
ConditionFailureMonitor Monitor for any failures from the invocation. 
ConditionPriorityBlockingQueue<T> A thread-safe class with ERROR(/PriorityBlockingQueue)-like operations that can retrieve objects that match a certain condition. 
ConditionPriorityBlockingQueue.AlwaysMatch<T> A ConditionPriorityBlockingQueue.IMatcher that matches any object. 
ConditionPriorityBlockingQueue.IMatcher<T> An interface for determining if elements match some sort of condition. 
ConfigCompleter Implementation of the Completer for our TF configurations. 
Configuration A concrete IConfiguration implementation that stores the loaded config objects in a map. 
ConfigurationDef Holds a record of a configuration, its associated objects and their options. 
ConfigurationDef.ConfigObjectDef Object to hold info for a className and the appearance number it has (e.g. if a config has the same object twice, the first one will have the first appearance number). 
ConfigurationDescriptor Configuration Object that describes some aspect of the configuration itself. 
ConfigurationDescriptor.LocalTestRunner Enum used to indicate local test runner. 
ConfigurationException Thrown if configuration could not be loaded. 
ConfigurationFactory Factory for creating IConfiguration
ConfigurationFactory.ConfigLoader Implementation of IConfigDefLoader that tracks the included configurations from one root config, and throws an exception on circular includes. 
ConfigurationUtil Utility functions to handle configuration files. 
ConfigurationXmlParserSettings A simple class to accept settings for the ConfigurationXmlParser

To pass settings to this class, the alias is mandatory. 

ConfigurationYamlParser Parser for YAML style Tradefed configurations 
ConfigUtil Utility class for creating, interacting with, and pushing statsd configuration files. 
Console Main TradeFederation console providing user with the interface to interact

Currently supports operations such as

  • add a command to test
  • list devices and their state
  • list invocations in progress
  • list commands in queue
  • dump invocation log to file/stdout
  • shutdown
Console.ArgRunnable<T> A Runnable with a run method that can take an argument 
Console.CaptureList A convenience type for List<List<String>> 
ConsoleReaderOutputStream An OutputStream that can be used to make System.out.print() play nice with the user's LineReader unfinishedLine. 
ConsoleResultReporter Result reporter to print the test results to the console. 
ContentAnalysisContext Provide the context surrounding a content to analyze it properly. 
ContentAnalysisContext.AnalysisMethod This describes what to expect from the content structure for proper analysis. 
ContentAnalysisResults Summary of the content analysis. 
ContentInformation Represents the content for a given build target of its base and current version. 
ContentProviderHandler Handler that abstract the content provider interactions and allow to use the device side content provider for different operations. 
CountingTestResultListener A TestResultListener that tracks the total number of tests by TestStatus 
CountTestCasesCollector Count and report the number of test cases for a given IRemoteTest
CoverageMeasurementForwarder A placeholder test that forwards coverage measurements from the build provider to the logger. 
CoverageOptions Tradefed object to hold coverage options. 
CpuThrottlingWaiter An ITargetPreparer that waits until max frequency on all cores are restored to highest level available 
CreateUserPreparer Target preparer for creating user and cleaning it up at the end. 
CurrentInvocation A class that tracks and provides the current invocation information useful anywhere inside the invocation. 
CurrentInvocation.InvocationInfo Some special named key that we will always populate for the invocation. 
CurrentInvocation.IsolationGrade Describes the level of isolation 


DebugHostLogOnFailureCollector Collector that will gather and log the host-side logs when a test case failure occurs. 
DefaultConnection Default connection representation of a device, assumed to be a standard adb connection of the device. 
DefaultConnection.ConnectionBuilder Builder used to described the connection. 
DefaultRemoteAndroidTestRunner Extension of the ddmlib RemoteAndroidTestRunner to set some default for Tradefed use cases. 
DefaultTestsZipInstaller A default implementation of tests zip installer. 
DelegatedInvocationExecution InvocationExecution which delegate the execution to another Tradefed binary. 
DependenciesResolver A new type of provider that allows to get all the dependencies for a test. 
DeviceActionTargetPreparer A ITargetPreparer to perform device actions. 
DeviceActionUtil A Utility class to execute device actions. 
DeviceActionUtil.Command Commands for device action. 
DeviceActionUtil.DeviceActionConfigError Exception for config error. 
DeviceAllocationResult Represents the results of an allocation attempt for a command. 
DeviceAllocationState Represents the allocation state of the device from the IDeviceManager perspective 
DeviceAvailableChecker Checker to ensure a module doesn't leave the device in an offline state. 
DeviceBaselineChecker Set device baseline settings before each module. 
DeviceBaselineSetter Abstract class used to create a device baseline setting. 
DeviceBatteryLevelChecker An IRemoteTest that checks for a minimum battery charge, and waits for the battery to reach a second charging threshold if the minimum charge isn't present. 
DeviceBatteryResourceMetricCollector This collector collects device battery metrics. 
DeviceBuildDescriptor A wrapper class for a IBuildInfo, that contains helper methods to retrieve device platform build information. 
DeviceBuildInfo A IBuildInfo that represents a complete Android device build and (optionally) its tests. 
DeviceBuildInfoBootStrapper A ITargetPreparer that replaces build info fields with attributes read from device

This is useful for testing devices with builds generated from an external source (e.g. 

DeviceBuildInfoInjector A ITargetPreparer that inserts DeviceBuildDescriptor metadata into the IBuildInfo
DeviceCleaner Performs reboot or format as cleanup action after test, and optionally turns screen off 
DeviceConcurrentUtil Contains utility methods and classes for concurrent device side command execution

Use ERROR(/ExecutorService) to run commands implemented as ShellCommandCallable, and use ERROR(/#joinFuture(String,Future,long)) for synchronization against the ERROR(/Future) as returned by ERROR(/ExecutorService) for the command execution. 

DeviceConcurrentUtil.ShellCommandCallable<V> A ERROR(/Callable) that wraps the details of executing shell command on an ITestDevice
DeviceConfigurationHolder A concrete IDeviceConfiguration implementation that stores the loaded device configuration objects in its attributes. 
DeviceDescriptor A class containing information describing a device under test. 
DeviceDisconnectedException Thrown when a device is no longer reachable via it's transport type, e.g. if the device is no longer visible via USB, or TCP/IP connection 
DeviceErrorIdentifier Error Identifiers from Device errors and device reported errors. 
DeviceFailedToBootError Thrown if a device fails to boot after being flashed with a build. 
DeviceFeatureModuleController A module controller to not run tests when it doesn't support certain feature. 
DeviceFileReporter A utility class that checks the device for files and sends them to ITestInvocationListener#testLog(String, LogDataType, InputStreamSource) if found. 
DeviceFlashPreparer A ITargetPreparer that flashes an image on physical Android hardware. 
DeviceFoldableState Representation of device foldable state as returned by "cmd device_state print-states". 
DeviceFolderBuildInfo A IDeviceBuildInfo that also contains other build artifacts contained in a directory on the local filesystem. 
DeviceImageTracker For some of the incremental device update, we need the baseline files to compute diffs. 
DeviceImageTracker.FileCacheTracker Track information of the device image cached and its metadata 
DeviceImageZipFlashingTargetPreparer A target preparer that flashes the device with device images provided via a specific format. 
DeviceInternetAccessibilityResourceMetricCollector The collector pings to check if the device has internet accessibility or not. 
DeviceJUnit4ClassRunner JUnit4 test runner that also accommodates IDeviceTest
DeviceJUnit4ClassRunner.LogAnnotation Fake annotation meant to carry logs to the reporters. 
DeviceJUnit4ClassRunner.MetricAnnotation Fake annotation meant to carry metrics to the reporters. 
DeviceJUnit4ClassRunner.TestLogData Implementation of ExternalResource and TestRule
DeviceJUnit4ClassRunner.TestMetrics Implementation of ExternalResource and TestRule
DeviceManagementGrpcServer GRPC server allowing to reserve a device from Tradefed. 
DeviceManager.FastbootDevice Representation of a device in Fastboot mode. 
DeviceMetricData Object to hold all the data collected by metric collectors. 
DeviceMonitorMultiplexer A proxy class to propagate requests to multiple IDeviceMonitors. 
DeviceNotAvailableException Thrown when a device is no longer available for testing. 
DeviceOwnerTargetPreparer An ITargetPreparer that sets up a device owner component. 
DeviceParameterizedRunner JUnit4 style parameterized runner for host-side driven parameterized tests. 
DeviceProperties Common constant definitions for device side property names 
DeviceReleaseReporter Device release reporter that handles communicating with the parent process the device(s) to be released. 
DeviceResetFeature Server side implementation of device reset. 
DeviceResetHandler Utility handling generically device resetting. 
DeviceRuntimeException Thrown when a device action did not results in the expected results. 
DeviceSelectionOptions Container for for device selection criteria. 
DeviceSelectionOptions.DeviceRequestedType The different possible types of placeholder devices supported. 
DeviceSettingChecker Check if device settings have changed during a module run. 
DeviceSetup A ITargetPreparer that configures a device for testing based on provided Options. 
DeviceSnapshotFeature Server side implementation of device snapshot. 
DeviceSnapshotHandler Utility handling Cuttlefish snapshot. 
DeviceStateMonitor Helper class for monitoring the state of a IDevice
DeviceStorageAgeResourceMetricCollector Parse storage age from logcat. 
DeviceStorageFiller Target preparer to fill up storage so some amount of free space is available. 
DeviceStorageStatusChecker Check if device has enough disk space for the given partitions. 
DeviceStringPusher Target preparer to write a string to a file. 
DeviceSuite Extends the JUnit4 container Suite in order to provide a ITestDevice to the tests that requires it. 
DeviceSyncHelper Helper that helps syncing a new device image to the device. 
DeviceTestCase Helper JUnit test case that provides the IRemoteTest and IDeviceTest services. 
DeviceTestResult An specialization of TestResult that will abort when a DeviceNotAvailableException occurs 
DeviceTestRunOptions A builder class for options related to running device tests through BaseHostJUnit4Test. 
DeviceTestSuite Helper JUnit test suite that provides the IRemoteTest and IDeviceTest services. 
DeviceTraceCollector Collector that will start perfetto trace when a test run starts and log trace file at the end. 
DeviceUnavailableMonitor This listener attempts to capture a test case level DNAE only. 
DeviceUnresponsiveException A specialization of DeviceNotAvailableException that indicates device is visible to adb, but is unresponsive (i.e., commands timing out, won't boot, etc) 
DeviceUpdateTargetPreparer An abstract ITargetPreparer that takes care of common steps around updating devices with a device image file from an external source (as opposed to a build service). 
DeviceWifiResourceMetricCollector The collector collects current connected wifi signal strength and link speed metrics. 
DeviceWiper A ITargetPreparer that wipes userdata 
DigestCalculator Utility methods to compute Digest
DirectedGraph<V> A directed unweighted graphs implementation. 
DisableSELinuxTargetPreparer Target preparer that disables SELinux if enabled. 
DryRunKeyStore A keystore for dry-run where any keystore value is always properly replaced and found. 
DryRunner Transparently dry runs tests instead of actually executing them. 
DynamicFileStubTest This is a tradefed test to test tradefed can resolve dynamic file correctly. 
DynamicRemoteFileResolver Class that helps resolving path to remote files. 
DynamicRemoteFileResolver.FileResolverLoader Loads implementations of IRemoteFileResolver
DynamicShardHelper Sharding strategy to allow work remote work queueing between multiple TF instances 
DynamicShardingConnectionInfoMessage Data-holding class in order to make sending via the feature server easier. 
DynamicSystemPreparer An ITargetPreparer that sets up a system image on top of a device build with the Dynamic System Update. 


EarlyDeviceReleaseFeature Feature server implementation for early device release. 
Email A helper class to send an email. 
EmailHostHealthAgent A IHostHealthAgent implementation to send email from Host monitor reports 
EmmaXmlConstants Constants used when parsing emma xml report. 
EndCentralDirectoryInfo EndCentralDirectoryInfo is a class containing the overall information of a zip file. 
EnforcedSeLinuxChecker Status checker that ensures the status of Selinux. 
EraseUserDataPreparer A ITargetPreparer that wipes user data on the device. 
ErrorIdentifier This interface describes a specific error and its properties. 
ErrorStorageUtil Helper class for manipulating the errors to align with the common storage. 
EventsLoggerListener Listener that logs all the events it receives into a file 
ExecutableAction A value class representing an action which can be executed. 
ExecutableActionResult A value class representing a result of a ExecutableAction
ExecutableBaseTest Base class for executable style of tests. 
ExecutableHostTest Test runner for executable running on the host. 
ExecutableTargetTest Test runner for executable running on the target. 
ExecutionFiles Files dependencies generated during the execution of a test or invocation that need to be carried for testing. 
ExecutionFiles.FilesKey Enumeration of known standard key for the map. 
ExecutionProperties Properties generated during the execution of a test or invocation. 
ExistingBuildProvider A IBuildProvider that returns an already constructed IBuildInfo
ExtendedFile A extension of standard file to carry a build related metadata. 
ExtensionAtomsRegistry ExtensionAtomsRegistry for local use of statsd. 


FailureDescription The class describing a failure information in Trade Federation. 
FakeTest A fake test whose purpose is to make it easy to generate repeatable test results. 
FakeTestsZipFolder A testing fixture that creates a fake unzipped tests folder based on a list of content. 
FastbootCommandPreparer Target preparer that triggers fastboot and sends fastboot commands. 
FastbootDeviceFlasher A class that relies on fastboot to flash an image on physical Android hardware. 
FastbootHelper A helper class for fastboot operations. 
FastbootUpdateBootstrapPreparer An ITargetPreparer that stages specified files (bootloader, radio, device image zip) into IDeviceBuildInfo to get devices flashed with FastbootDeviceFlasher, then injects post-boot device attributes into the build info for result reporting purposes. 
FatalHostError An exception that indicates a fatal unrecoverable error has occurred on the host machine running TradeFederation, and that the TradeFederation instance should be shut down. 
FeatureFlagTargetPreparer Updates the DeviceConfig (feature flags tuned by a remote service). 
FileDownloadCache A helper class that maintains a local filesystem LRU cache of downloaded files. 
FileDownloadCacheFactory A factory for creating FileDownloadCache 
FileDownloadCacheWrapper A wrapper class that provides FileDownloadCache facilities while implementing the IFileDownloader interface. 
FileIdleMonitor Monitors files and executes a callback if they have been idle (i.e. 
FileInputStreamSource A InputStreamSource that takes an input file. 
FileLogger A ILeveledLogOutput that directs log messages to a file and to stdout. 
FileProtoResultReporter Proto reporter that dumps the TestRecord into a file. 
FilePullerDeviceMetricCollector A BaseDeviceMetricCollector that listen for metrics key coming from the device and pull them as a file from the device. 
FilePullerLogCollector Logger of the file reported by the device-side. 
FileSystemLogSaver Save logs to a file system. 
FileUtil A helper class for file related operations 
FileUtil.LowDiskSpaceException Thrown if usable disk space is below minimum threshold. 
FilteredResultForwarder Variant of ResultForwarder that only allows an allowlist of TestDescription to be reported. 
FixedByteArrayOutputStream An in-memory ERROR(/OutputStream) that only keeps a maximum amount of data. 
FlashingMethod An enum to describe the method used to flash device under test 
FlashingResourcesParser A class that parses out required versions of auxiliary image files needed to flash a device. 
FlashingResourcesParser.AndroidInfo A typedef for Map&lt;String, MultiMap&lt;String, String&gt;&gt;
FlashingResourcesParser.Constraint A filtering interface, intended to allow FlashingResourcesParser to ignore some resources that it otherwise might use 
FlashingResourceUtil This utility helps setting the appropriate version of artifacts so they can be flashed via DeviceFlashPreparer
FoldableExpandingHandler A IModuleParameterHandler expanding into more for each non-primary foldable configuration. 
FoldableHandler Generic foldable handler that can take the foldable parameters to create a specialized module. 
FoldableModePreparer A target preparer that can switch the foldable state of a device. 
FolderBuildInfo Concrete implementation of a IFolderBuildInfo
FolderSaver A ITargetPreparer that pulls directories off device, compresses and saves it into logging backend. 
FormattedGeneratorReporter Reporter that allows to generate reports in a particular format. 
FuseUtil A helper class for FUSE operations. 


GceAvdInfo Structure to hold relevant data for a given GCE AVD instance. 
GceManager Helper that manages the GCE calls to start/stop and collect logs from GCE. 
GceRemoteCmdFormatter Utility class to format commands to reach a remote gce device. 
GceRemoteCmdFormatter.ScpMode SCP can be used to push or pull file depending of the structure of the args. 
GceSshTunnelMonitor Thread Monitor for the Gce ssh tunnel. 
GcovCodeCoverageCollector A BaseDeviceMetricCollector that will pull gcov coverage measurements off of the device and log them as test artifacts. 
GcovKernelCodeCoverageCollector A BaseDeviceMetricCollector that will pull gcov kernel coverage measurements out of debugfs and off of the device and then finally logs them as test artifacts. 
GCSBucketUtil File manager to download and upload files from Google Cloud Storage (GCS). 
GCSBucketUtil.GCSFileMetadata Simple wrapper for file info in GCS. 
GCSCommon Base class for Gcs operation like download and upload. 
GCSConfigurationFactory A ConfigurationFactory loads configs from Google Cloud Storage. 
GCSConfigurationFactory.GCSConfigLoader Extension of ConfigurationFactory.ConfigLoader that loads config from GCS, tracks the included configurations from one root config, and throws an exception on circular includes. 
GCSConfigurationServer Config server loads configs from Google Cloud Storage (GCS). 
GCSDownloaderHelper Downloader for GCS bucket that takes care of caching and resolving the global config. 
GCSFileDownloader File downloader to download file from google cloud storage (GCS). 
GCSFileUploader File uploader to upload file data to google cloud storage (GCS). 
GCSHostResourceManager Download host resource from GCS (Google cloud storage). 
GcsRemoteFileResolver Implementation of IRemoteFileResolver that allows downloading from a GCS bucket. 
GenericLogcatEventParser<LogcatEventType> Parse logcat input for events. 
GenericLogcatEventParser.LogcatEvent Struct to hold a logcat event with the event type and triggering logcat message 
GetPreviousPassedHelper Helper to get the previous passed test filters. 
GkiDeviceFlashPreparer A target preparer that flash the device with android common kernel generic image. 
GlobalConfiguration An IGlobalConfiguration implementation that stores the loaded config objects in a map 
GlobalFilterGetter Service implementation that returns the filters of a given invocation. 
GlobalTestFilter Filter options applied to the invocation. 
GoogleApiClientUtil Utils for create Google API client. 
GoogleBenchmarkResultParser Parses the results of Google Benchmark that run from shell, and return a map with all the results. 
GoogleBenchmarkTest A Test that runs a Google benchmark test package on given device. 
GranularRetriableTestWrapper A wrapper class works on the IRemoteTest to granulate the IRemoteTest in testcase level. 
GranularRetriableTestWrapper.StartEndCollector Class helper to catch missing run start and end. 
GsiDeviceFlashPreparer A target preparer that flashes the device with android generic system image. 
GTest A Test that runs a native test package on given device. 
GTestBase The base class of gTest 
GTestListTestParser A result parser for gtest dry run mode with "--gtest_list_tests" parameter. 
GTestResultParser Parses the 'raw output mode' results of native tests using GTest that run from shell, and informs a ITestInvocationListener of the results. 
GTestXmlResultParser Parses the 'xml output mode' results of native tests using GTest that run from shell, and informs a ITestRunListener of the results. 


HarnessException Base exception class for exception thrown within the harness. 
HarnessIOException Harness exception that helps carrying file issues. 
HeapHostMonitor AbstractHostMonitor implementation that monitors the heap memory on the host and log it periodically to the history log. 
HelloWorldMultiTargetPreparer An example implementation of a IMultiTargetPreparer
HistoryLogger TF History Logger, special log that contains only some specific events. 
HostGTest A Test that runs a native test package. 
HostMetric This class represents a host metric sample to be reported. 
HostOptions Host options holder class. 
HostOrchestratorUtil Utility to execute commands via Host Orchestrator on remote instances. 
HostStatsdMetricCollector A IMetricCollector that collects statsd metrics from host side using statsd utility commands. 
HostTest A test runner for JUnit host based tests. 
HostUtils Implements some useful utility methods for running host tests. 
HprofAllocSiteParser Helper class to parse info from an Allocation Sites section of hprof reports. 
HttpHelper Contains helper methods for making http requests 
HttpHelper.RequestRunnable Runnable for making requests with IRunUtil#runEscalatingTimedRetry(long, long, long, long, IRunnableResult)
HttpMultipartPost Helper class for making multipart HTTP post requests. 
HttpRemoteFileResolver Implementation of IRemoteFileResolver that allows downloading remote file via http 
HttpsRemoteFileResolver Implementation of IRemoteFileResolver that allows downloading remote file via https 


IAbi Interface representing the ABI under test. 
IAbiReceiver A test that needs the ABI under test. 
IAndroidDebugBridge Interface definition for AndroidDebugBridge methods used in this package. 
IAppBuildInfo This interface is deprecated. Use IBuildInfo directly. 
IAutoRetriableTest Interface for an IRemoteTest that doesn't implement ITestFilterReceiver but still wishes to support auto-retry. 
IBatteryInfo The interface defining the interaction with a battery of a device. 
IBatteryInfo.BatteryState Describes the current battery charging state. 
IBuildInfo Holds information about the build under test. 
IBuildInfo.BuildInfoProperties Some properties that a IBuildInfo can have to tweak some handling of it. 
IBuildProvider Responsible for providing info regarding the build under test. 
IBuildReceiver A test that needs reference to the build under test. 
ICacheClient An interface for a cache client. 
IClusterClient An interface for interacting with the TFC backend. 
IClusterEvent Interface for any cluster event to be uploaded to TFC. 
IClusterEventUploader<T extends IClusterEvent> Interface for ClusterEventUploader 
IClusterOptions An interface for getting cluster-related options. 
ICommandOptions Container for execution options for commands. 
ICommandScheduler A scheduler for running TradeFederation commands. 
ICommandScheduler.IScheduledInvocationListener Listener for invocation events when invocation completes. 
ICompressionStrategy An interface representing a compression algorithm that can be selected at runtime. 
IConfigOptionValueTransformer An interface for manipulating config option value 
IConfigurableVirtualDevice An interface to provide information about a possibly preconfigured virtual device info (host ip, host user, ports offset and etc.). 
IConfiguration Configuration information for a TradeFederation invocation. 
IConfigurationFactory Factory for creating IConfiguration
IConfigurationReceiver Simple interface to represent object that accepts an IConfiguration
IConfigurationServer An interface for config server. 
ICredentialFactory An interface for credential factory to create oauth2 Credential
IDefaultObjectLoader Interface for loading the default objects that should be part of our YAML configuration. 
IDefaultObjectLoader.LoaderConfiguration The loading configuration object to pass information to the loader. 
IDeviceActionReceiver Provides an API to receive device events. 
IDeviceBuildInfo A IBuildInfo that represents a complete Android device build and (optionally) its tests. 
IDeviceBuildProvider A IBuildProvider that uses information from a ITestDevice to retrieve a build. 
IDeviceConfiguration Device Configuration Holder Interface. 
IDeviceFlasher Flashes a device image on a device. 
IDeviceFlasher.UserDataFlashOption Enum of options for handling the userdata image 
IDeviceManager Interface for managing the set of available devices for testing. 
IDeviceManager.IFastbootListener A listener for fastboot state changes. 
IDeviceMonitor Interface for monitoring state of devices. 
IDeviceMonitor.DeviceLister A Runnable-like class that should return the known devices and their states. 
IDeviceRecovery Interface for recovering a device that has gone offline. 
IDeviceSelection Interface for device selection criteria. 
IDeviceStateMonitor Provides facilities for monitoring the state of a IDevice
IDeviceTest Interface for object that needs a reference to a ITestDevice
IDisableable Interface that describes a Tradefed object that can be disabled. 
IDynamicShardingClient Wrapper interface for the sharding client

This exists so that we can swap in an HTTP one or testing one if needed. 

IDynamicShardingConnectionInfo Interface for classes that contain dynamic sharding connection info 
IEmail Interface for sending email. 
IEmail.Message Container for email message data. 
IFileDownloader Interface for downloading a remote file. 
IFileEntry Interface definition that provides simpler, mockable contract to FileEntry methods. 
IFileResolverLoader Loads implementations of IRemoteFileResolver
IFileResolverLoader.ResolverLoadingException Exception thrown if a resolver cannot be loaded or initialized. 
IFlashingResourcesParser Interface for providing required versions of auxiliary image files needed to flash a device. 
IFlashingResourcesRetriever Interface for retrieving auxiliary image files needed to flash a device. 
IFolderBuildInfo A simple abstract IBuildInfo whose build artifacts are containing in a local filesystem directory. 
IFormatterGenerator Interface describing a formatter for SuiteResultHolder
IGlobalConfiguration A class to encompass global configuration information for a single Trade Federation instance (encompassing any number of invocations of actual configurations). 
IHarnessException Description of the harness exception interface that will be implemented by harness exceptions. 
IHostCleaner Cleans up the host after the test run has finished. 
IHostHealthAgent An interface to emit host or device metrics. 
IHostMonitor Interface to dispatch host data 
IHostMonitor.HostDataPoint Generic class for data to be reported. 
IHostOptions Host options holder interface. 
IHostOptions.PermitLimitType Enum describing the possible permit limiters 
IHostResourceManager Interface to manager host resource. 
IHttpHelper Helper methods for performing http requests. 
IInvocationContext Holds information about the Invocation for the tests to access if needed. 
IInvocationContextReceiver A test that needs reference to the context of the invocation. 
IInvocationExecution Interface describing the actions that will be done as part of an invocation. 
IKeyStoreClient Interface to access a key store for password or sensitive data. 
IKeyStoreFactory Factory for creating IKeyStoreClient
ILabPreparer Marker interface for lab preparers

See ITargetPreparer for a description of what these interfaces are intended. 

ILeveledLogOutput Classes which implement this interface provides methods that deal with outputting log messages. 
ILogcatReceiver A class that provides the output of a device's logcat as an InputStreamSource
ILogRegistry An interface for a ILogOutput singleton logger that multiplexes and manages different loggers. 
ILogRegistry.EventType Events that are useful to be logged 
ILogSaver Classes which implement this interface provide methods for storing logs to a central location. 
ILogSaverListener Allows for ITestInvocationListeners to listen for when log files are saved. 
ImageContentAnalyzer Analyzer for device image content analysis 
IManagedTestDevice A ITestDevice whose lifecycle is managed. 
IManagedTestDevice.DeviceEventResponse Container for a response to a IManagedTestDevice#handleAllocationEvent(DeviceEvent) call 
IManagedTestDeviceFactory Creator interface for IManagedTestDevice
IMetricCollector This interface will be added as a decorator when reporting tests results in order to collect matching metrics. 
IMetricCollectorReceiver Interface for IRemoteTests to implement if they need to get the list of IMetricCollectors for the test run. 
IMoblyYamlResultHandler Interface of mobly yaml result handler. 
IMoblyYamlResultHandler.ITestResult Interface of mobly yaml result 
IModuleController Interface for controlling if a module should be executed or not. 
IModuleController.RunStrategy Enum describing how the module should be executed. 
IModuleParameterHandler The interface for parameters of suites modules. 
IMultiDeviceRecovery Interface for recovering multiple offline devices. 
IMultiDeviceTest This interface is deprecated. This interface is kept temporarily for compatibility but is not actually used anymore. Please do not implement it. 
IMultiTargetPreparer Prepares the test environment for several devices together. 
INativeDevice Provides an reliable and slightly higher level API to a ddmlib IDevice
INativeDeviceTest Interface for object that needs a reference to a INativeDevice
IncrementalImageUtil A utility to leverage the incremental image and device update. 
InfraErrorIdentifier Error Identifiers from Trade Federation infra, and dependent infra (like Build infra). 
InputStreamSource This interface basically wraps an ERROR(/InputStream) to make it clonable. 
InstallAllTestZipAppsSetup A ITargetPreparer that installs all apps in a test zip. 
InstallApkSetup A ITargetPreparer that installs one or more apks located on the filesystem. 
InstallBuildEnvApkSetup A ITargetPreparer that installs one or more test apks from an Android platform build env. 
InstalledInstrumentationsTest Runs all instrumentation found on current device. 
InstantAppHandler Handler for ModuleParameters#INSTANT_APP
InstrumentationPreparer A ITargetPreparer that runs instrumentation 
InstrumentationTest A Test that runs an instrumentation test package on given device. 
InvocationContext Generic implementation of a IInvocationContext
InvocationExecution Class that describes all the invocation steps: build download, target_prep, run tests, clean up. 
InvocationLocal<T> This class provides invocation-scope variables. 
InvocationMetricLogger A utility class for an invocation to log some metrics. 
InvocationMetricLogger.InvocationGroupMetricKey Grouping allows to log several groups under a same key. 
InvocationMetricLogger.InvocationMetricKey Some special named key that we will always populate for the invocation. 
InvocationStatus A class to store invocation status. 
InvocationStatus A helper enum to represent the invocation status 
InvocationSummaryHelper Helper class for gathering and reporting TestSummary for set of listeners 
InvocationToJUnitResultForwarder A class that listens to ITestInvocationListener events and forwards them to a TestListener
IPostProcessor Post processors is a Trade Federation object meant to allow the processing of metrics and logs AFTER the tests and BEFORE result reporting. 
IRemoteFeature Interface describing a feature in Tradefed that can be executed based on the request. 
IRemoteFileResolver Interface for objects that can resolve a remote file into a local one. 
IRemoteFileResolver.RemoteFileResolverArgs The args passed to the resolvers 
IRemoteFileResolver.ResolvedFile Class holding information about the resolved file and some metadata. 
IRemoteScheduledListenersFeature Extension of IRemoteFeature to support passing in IScheduledInvocationListeners. 
IRemoteTest A test that reports results directly to a ITestInvocationListener
IReportNotExecuted In case of an incomplete execution, IRemoteTest that implements this interface may report their non-executed tests for improved reporting. 
IRescheduler Interface for rescheduling a config for future execution. 
IResourceMetricCollector The interface for user to implement customized resource collectors. 
IRestApiHelper A helper interface for performing REST API calls. 
IResumableTest This interface is deprecated. No need for this anymore 
IRetryDecision Interface driving the retry decision and applying the filter on the class for more targeted retry. 
IRunUtil Interface for running timed operations and system commands. 
IRunUtil.EnvPriority Enum that defines whether setting or unsetting a particular env. 
IRunUtil.IRunnableResult An interface for asynchronously executing an operation that returns a boolean status. 
ISandbox Interface defining a sandbox that can be used to run an invocation. 
ISandboxFactory Factory for creating ISandbox
ISetOptionReceiver Implementation of this interface should have an Option with a "set-option" name linked to HostTest#SET_OPTION_NAME
IShardableListener A ITestInvocationListener that can be sharded. 
IShardableTest A IRemoteTest that can be split into separately executable sub-tests. 
IShardHelper Interface of an object that describes the sharding strategy to adopt for a configuration. 
IsolatedHostTest Implements a TradeFed runner that uses a subprocess to execute the tests in a low-dependency environment instead of executing them on the main process. 
ISupportGranularResults Interface specifying whether a ITestInvocationListener supports receiving the granular results or not. 
ISystemStatusChecker An checker that performs checks on system status and returns a boolean to indicate if the system is in an expected state. 
ISystemStatusCheckerReceiver A IRemoteTest that requires access to the ISystemStatusChecker from the configuration. 
ITargetCleaner This interface is deprecated. tearDown has been moved to the base ITargetPreparer interface. 
ITargetPreparer Prepares the test environment for the test run. 
ITerribleFailureHandler An interface to handle terrible failures from, Throwable)
ITestAnnotationFilterReceiver A runner that can filter which tests to run based on annotations. 
ITestCollector Provides support for test collection; when set, test runner must perform a dry run to collect test cases without actually executing them. 
ITestDevice Provides an reliable and slightly higher level API to a ddmlib IDevice
ITestDevice.ApexInfo A simple struct class to store information about a single APEX 
ITestDevice.MountPointInfo A simple struct class to store information about a single mountpoint 
ITestFileFilterReceiver A runner that can receive a file specifying which tests to run and/or not to run. 
ITestFilterReceiver A runner that can filter which tests to run. 
ITestInformationReceiver Interface to receive the TestInformation for some classes. 
ITestInvocation Handles one TradeFederation test invocation. 
ITestInvocation.ExitInformation Represents some exit information for an invocation. 
ITestInvocationListener Listener for test results from the test invocation. 
ITestLifeCycleReceiver Receives event notifications during instrumentation test runs. 
ITestLogger An entity that can perform logging of data streams of various types. 
ITestLoggerReceiver An entity that can be injected with an ITestLogger instance so that it can be used for logging purposes. 
ITestsPool Interface describing a pool of tests that we can access and run 
ITestSuite Abstract class used to run Test Suite. 
ITestSuiteResultLoader Interface describing an helper to load previous results in a way that can be re-run. 
ITestSummaryListener Interface that allows ITestInvocationListener to exchange some limited information via summaries. 
ITestsZipInstaller Installs tests from a tests zip file (as outputted by the build system) on a device. 
ITokenProvider Interface describing an object that can provide the tokens of a particular device. 
ITokenRequest Interface a IRemoteTest can implement to expose the fact that it requires a device with a special token. 


JarHostTest Test runner for host-side JUnit tests. 
JarHostTest.HostTestListener Wrapper listener that forwards all events except testRunStarted() and testRunEnded() to the embedded listener. 
JavaCodeCoverageCollector A BaseDeviceMetricCollector that will pull Java coverage measurements off of the device and log them as test artifacts. 
JavaCodeCoverageFlusher A utility class that resets and forces a flush of Java code coverage measurements from processes running on the device. 
JSONFileKeyStoreClient A sample implementation where a local JSON file acts a key store. 
JSONFileKeyStoreFactory Implementation of a JSON KeyStore Factory, which provides a JSONFileKeyStoreClient for accessing a JSON Key Store File. 
JsonHttpTestResultReporter A result reporter that encode test metrics results and branch, device info into JSON and POST into an HTTP service endpoint 
JUnit4ResultForwarder Result forwarder from JUnit4 Runner. 
JUnit4TestFilter Helper Class that provides the filtering for JUnit4 runner by extending the Filter
JUnitRunUtil A helper class for directing a IRemoteTest#run(TestInformation, ITestInvocationListener) call to a Test#run(TestResult) call. 
JUnitToInvocationResultForwarder A class that listens to TestListener events and forwards them to an ITestInvocationListener
JUnitXmlParser Parser that extracts test result data from JUnit results stored in ant's XMLJUnitResultFormatter and forwards it to a ITestInvocationListener. 


KernelTargetTest Test runner for executable running on the target and parsing tesult of kernel test. 
KernelTestModuleController Base class for a module controller to not run tests when it doesn't match the architecture . 
KeyguardControllerState A container for the keyguard states. 
KeyguardStatusChecker Checks the keyguard status after module execution. 
KeyStoreException Thrown when a fatal key store error happens. 
KillExistingEmulatorPreparer A ITargetPreparer that shuts down a running emulator. 
KnownFailurePreparer Target preparer to skip retrying known failure. 
KTapResultParser Reads KTAP output as that produced by a KUnit test module and placed in a `results` file under debugfs. 
KUnitModuleTest Test runner for running KUnit test modules on device. 


LabResourceDeviceMonitor The lab resource monitor which initializes/manages the gRPC server for LabResourceService. 
LargeOutputReceiver A class designed to help run long running commands collect output. 
LastShardDetector When running local sharding, sometimes we only want to execute some actions when the last shard reaches invocationEnded(long)
LeakedThreadStatusChecker Status checker to ensure a module does not leak a running Thread. 
LegacySubprocessResultsReporter A frozen implementation of the subprocess results reporter which should remain compatible with earlier versions of TF/CTS (e.g. 8+), despite changes in its superclass. 
ListInstrumentationParser A IShellOutputReceiver that parses the output of a 'pm list instrumentation' query 
LocalAndroidVirtualDevice The class for local virtual devices running on TradeFed host. 
LocalAppBuildProvider A IBuildProvider that constructs a IBuildInfo based on a provided local path 
LocalDeveloper Detects and returns whether this is a local developer running Tradefed. 
LocalDeviceBuildProvider A IBuildProvider that constructs a IDeviceBuildInfo based on a provided filesystem directory path. 
LocalEmulatorLaunch A TargetPreparer that launches an emulator locally from an android build environment. 
LocalEmulatorSnapshot A TargetPreparer intended for generating a clean emulator snapshot from a android build/development environment 
LocalFileHeader LocalFileHeader is a class containing the information of a file/folder inside a zip file. 
LocalFileResolver Implementation of IRemoteFileResolver that allows linking local files 
LocalFolderBuildProvider A IBuildProvider that constructs a IFolderBuildInfo based on a provided local path 
LocalHostResourceManager Manager host resource. 
LocalPool Implementation of a pool of local tests 
LocalRunInstructionBuilder Utility to compile the instruction to run test locally. 
LockSettingsBaselineSetter A setter to remove screen lock settings. 
LogcatCrashResultForwarder Special listener: on failures (instrumentation process crashing) it will attempt to extract from the logcat the crash and adds it to the failure message associated with the test. 
LogcatEventType Event types for LogcatEventParser
LogcatOnFailureCollector Collector that will capture and log a logcat when a test case fails. 
LogcatReceiver Class that collects logcat in background. 
LogcatTimingMetricCollector A metric collector that collects timing information (e.g. user switch time) from logcat during one or multiple repeated tests by using given regex patterns to parse start and end signals of an event from logcat lines. 
LogDataType Represents the data type of log data. 
LogFile Class to hold the metadata for a saved log file. 
LogFileSaver A helper for ITestInvocationListener's that will save log data to a file 
LogRegistry A ILogRegistry implementation that multiplexes and manages different loggers, using the appropriate one based on the ThreadGroup of the thread making the call. 
LogSaverResultForwarder A ResultForwarder for saving logs with the global file saver. 
LogUtil A logging utility class. 
LogUtil.CLog A shim class for Log that automatically uses the simple classname of the caller as the log tag 
LUCIResultReporter A result reporter that saves test results needed by ResultDB and LUCI into JSON format (go/result-sink) and logs the file location in the console. 


MainlineModuleHandler A simple handler class for Mainline Modules that creates a InstallApexModuleTargetPreparer and injects the dynamic link into it based on the given mainline modules to automatically retrieve those modules. 
MainlineTestModuleController Base class for a module controller to run tests based on the preloaded mainline modules on the device under test. 
ManagedRemoteDevice A device running inside a virtual machine that we manage remotely via a Tradefed instance inside the VM. 
ManagedTestDeviceFactory Factory to create the different kind of devices that can be monitored by Tf 
MaxSdkModuleController Base class for a module controller to not run tests on versions above a specified SDK version number. 
MergedZipEntryCollection Merge individual zip entries in a large zip file into blocks to minimize the download attempts. 
MergeMultiBuildTargetPreparer A IMultiTargetPreparer that allows to pass information from one build to another by naming them and the file key to copy to the other build. 
MergeStrategy Describes how the results should be aggregated when multiple attempts are present. 
MerkleTree A merkle tree representation as defined by the remote execution api. 
MetricFilePostProcessor Used for uploading the metrics log file collected during the test and run level. 
MetricOption Annotation for test methods annotated with @Test, or if the annotation is part of the annotation list of TestDescription that allows to specify some extra parameters useful for: Tuning the behavior of the collectors, filtering some methods. 
MetricsXMLResultReporter MetricsXMLResultReporter writes test metrics and run metrics to an XML file in a folder specified by metrics-folder parameter at the invocationEnded phase of the test. 
MetricTestCase Extension of TestCase that allows to log metrics when running as part of TradeFed. 
MetricTestCase.LogHolder Structure to hold a log file to be reported. 
MetricUtil Utility class for pulling metrics from pushed statsd configurations. 
MetricUtility Contains common utility methods for storing the test metrics, aggregating the metrics in similar tests and writing the metrics to a file. 
MinApiLevelModuleController Base class for a module controller to not run tests when it below a specified API Level. 
MinSdkModuleController Base class for a module controller to not run tests on versions below a specified SDK version number. 
MixImageZipPreparer An IMultiTargetPreparer that mixes a system build's images in a device build. 
MixKernelTargetPreparer A ITargetPreparer that allows to mix a kernel image with the device image. 
MoblyBinaryHostTest Host test meant to run a mobly python binary file from the Android Build system (Soong) 
MoblyYamlResultControllerInfoHandler Mobly yaml result 'Controller Info' element handler. 
MoblyYamlResultHandlerFactory Mobly yaml result handler factory which generates appropriate handler based on result type. 
MoblyYamlResultParser Mobly yaml test results parser. 
MoblyYamlResultRecordHandler Mobly yaml result 'Record' element handler. 
MoblyYamlResultSummaryHandler Mobly yaml result 'Summary' element handler. 
MoblyYamlResultTestNameListHandler Mobly yaml result 'Test Name List' element handler. 
MoblyYamlResultUserDataHandler Mobly yaml result 'User Data' element handler. 
ModuleDefinition Container for the test run configuration. 
ModuleListener Listener attached to each IRemoteTest of each module in order to collect the list of results. 
ModuleLogcatCollector Version of logcat collector but for module. 
ModuleMerger Helper class for operation related to merging ITestSuite and ModuleDefinition after a split. 
ModuleParameters Special values associated with the suite "parameter" keys in the metadata of each module. 
ModuleParametersHelper Helper to get the IModuleParameterHandler associated with the parameter. 
ModulePusher.ModulePushError Fatal error during Mainline module push. 
ModuleSplitter Helper to split a list of modules represented by IConfiguration into a list of execution units represented by ModuleDefinition
ModuleTestTypeUtil Contains common utility methods for checking module. 
MultiFailureDescription Collect multiple FailureDescription in one holder. 
MultiMap<K, V> A ERROR(/Map) that supports multiple values per key. 


NameMangleListener A proxy listener to translate test method, class, and package names as results are reported. 
NativeBenchmarkTest A Test that runs a native benchmark test executable on given device. 
NativeBenchmarkTestParser A IShellOutputReceiver that parses the benchmark test data output, collecting metrics on average time per operation. 
NativeBridgeModuleController A module controller to check if a device support native bridge. 
NativeCodeCoverageFlusher A utility class that clears native coverage measurements and forces a flush of native coverage data from processes on the device. 
NativeDevice Default implementation of a ITestDevice Non-full stack android devices. 
NativeDevice.AdbAction A ERROR(DeviceAction/ DeviceAction) for running a OS 'adb ....' command. 
NativeDevice.RebootDeviceAction ERROR(DeviceAction/ DeviceAction) for rebooting a device. 
NativeDevice.RebootMode A mode of a reboot. 
NativeDeviceStateMonitor Helper class for monitoring the state of a IDevice with no framework support. 
NativeLeakCollector A ITargetPreparer that runs 'dumpsys meminfo --unreachable -a' to identify the unreachable native memory currently held by each process. 
NativeStressTest A Test that runs a native stress test executable on given device. 
NativeStressTestParser A IShellOutputReceiver that parses the stress test data output, collecting metrics on number of iterations complete and average time per iteration. 
NegativeHandler Handler that specify that nothing should be done and the parameter should not create any extra module. 
NestedDeviceStateMonitor Device state monitor that executes extra checks on nested device to accommodate the specifics of the virtualized environment. 
NestedRemoteDevice Representation of the device running inside a remote Cuttlefish VM. 
NetworkNotAvailableException Thrown when a device is not able to connect to network for testing. 
NoApkTestSkipper Special preparer that allows to skip an invocation completely (preparation and tests) if there are no apks to tests. 
NoDeviceException Thrown when there's no device to execute a given command. 
NoisyDryRunTest Run noisy dry run on a command file. 
NoOpConfigOptionValueTransformer An no-op IConfigOptionValueTransformer 
NotMultiAbiHandler Special handler that notify the SuiteModuleLoader that the secondary abi should not create a module. 
NullDevice A placeholder IDevice used by DeviceManager to allocate when IDeviceSelection#nullDeviceRequested() is true 


OpenObjectLoader Loader for the default objects available in AOSP. 
Option Annotates a field as representing a IConfiguration option. 
OptionClass Annotates a class as representing a IConfiguration object. 
OptionCopier A helper class that can copy Option field values with same names from one object to another. 
OptionDef Holds the details of an Option
OptionFetcher Helper to get the test options from the parent process. 
OptionNotAllowedException Specific ConfigurationException when an option is not allowed to be passed in the command line. 
OptionSetter Populates Option fields. 
OptionSetter.OptionFieldsForName Container for the list of option fields with given name. 
OptionUpdateRule Controls the behavior when an option is specified multiple times. 
OtaDeviceBuildInfo A IDeviceBuildInfo used for over-the-air update testing. 
OtatoolsBuildInfo An IBuildInfo that contains otatools artifacts. 
OxygenClient A class that manages the use of Oxygen client binary to lease or release Oxygen device. 
OxygenUtil Utility to interact with Oxygen service. 


PackageInfo Container for an application's package info parsed from device. 
PackageInstalledModuleController Module controller to not run tests when the device has not got the given packages installed. 
Pair<A, B> Define our own Pair class which contains two objects. 
PairingMultiTargetPreparer A multi-target preparer helps make Bluetooth pairing (and connection) between two devices. 
ParallelDeviceExecutor<V> Wrapper of ERROR(/ExecutorService) to execute a function in parallel. 
ParentSandboxInvocationExecution Version of InvocationExecution for the parent invocation special actions when running a sandbox. 
ParentShardReplicate Replicate a setup for one device to all other devices that will be part of sharding. 
PartialZipDownloadCache Utility to cache partial download files based on their content. 
PassingTestFileReporter A ITestInvocationListener that saves the list of passing test cases to a test file 
PerfettoGenericPostProcessor A post processor that processes text/binary metric perfetto proto file into key-value pairs by recursively expanding the proto messages and fields with string values until the field with numeric value is encountered. 
PerfettoPreparer Perfetto preparer pushes the config file in to the device at a standard location to which perfetto have access to. 
PerfettoPullerMetricCollector Base implementation of FilePullerDeviceMetricCollector that allows pulling the perfetto files from the device and collect the metrics from it. 
PerfettoTraceRecorder A utility class for recording perfetto trace on a ITestDevice
PrettyPrintDelimiter Helper utility that helps to print delimited message that stands out. 
PrettyTestEventLogger Logger matching the events and logging them in order to make it easier to debug. 
ProcessInfo Used to store process related(USER, PID, NAME, START TIME IN SECOND SINCE EPOCH) information. 
ProfileParameterHandler Base parameter handler for any profile user. 
ProfileTargetPreparer Base class for setting up target preparer for any profile user android.os.usertype.profile.XXX
PropertyChanger A utility class for changing (or adding) items in an Android property file 
ProtoResultParser Parser for the Tradefed results proto format. 
ProtoResultParser.TestLevel Enumeration representing the current level of the proto being processed. 
ProtoResultReporter Result reporter build a TestRecord protobuf with all the results inside. 
ProtoUtil Utility methods for dealing with protobuf messages type-agnostically. 
ProxyConfiguration Object that allows pointing to a remote configuration to execute. 
PsParser Utility used to parse(USER,PID and NAME) from the "ps" command output 
PtsBotTest Run PTS-bot tests. 
PushFileInvoker This class is deprecated. Use PushFilePreparer instead 
PushFilePreparer A ITargetPreparer that attempts to push any number of files from any host path to any device path. 
PythonBinaryHostTest Host test meant to run a python binary file from the Android Build system (Soong)

The test runner supports include-filter and exclude-filter. 

PythonBinaryHostTest.PythonForwarder Result forwarder to replace the run name by the binary name. 
PythonUnitTestResultParser Interprets the output of tests run with Python's unittest framework and translates it into calls on a series of ITestInvocationListeners. 
PythonUnitTestRunner This class is deprecated. Use PythonBinaryHostTest instead. 
PythonVirtualenvHelper A helper class for activating Python 3 virtual environment. 
PythonVirtualenvPreparer Sets up a Python virtualenv on the host and installs packages. 




RebootReasonCollector Collector that collects device reboot during the test run and report them by reason and counts. 
RebootTargetPreparer Target preparer that reboots the device. 
RecoveryLogPreparer A target preparer used to collect logs before recovery. 
RegexTrie<V> The RegexTrie is a trie where each stored segment of the key is a regex ERROR(/Pattern)
RemoteAndroidDevice Implementation of a ITestDevice for a full stack android device connected via adb connect. 
RemoteAndroidVirtualDevice Extends RemoteAndroidDevice behavior for a full stack android device running in the Google Compute Engine (Gce). 
RemoteAvdIDevice A placeholder IDevice used by DeviceManager to allocate when DeviceSelectionOptions.gceDeviceRequested() is true 
RemoteCacheClient A RemoteActionCache implementation that uses gRPC calls to a remote API server. 
RemoteDynamicPool Implementation of a pool of remote work queued tests 
RemoteFileResolver A simple class that allows one to load files from a variety of places using URIs and the service provider functionality. 
RemoteFileUtil Utility class to handle file from a remote instance 
RemoteInvocationExecution Implementation of InvocationExecution that drives a remote execution. 
RemoteSshUtil Utility to execute ssh commands on remote instances. 
RemoteTestTimeOutEnforcer Listeners that allows to check the execution time of a given test config and fail it if it goes over a given timeout. 
RemoteZip Utilities to unzip individual files inside a remote zip file. 
RemoveSystemAppPreparer A ITargetPreparer for removing an apk from the system partition before a test run. 
ReportPassedTests Report in a file possible filters to exclude passed test. 
RequestUtil Utilities to allow generic retry of network requests with error handling. 
ResolvePartialDownload Resolve a partial download request. 
ResourceMetricUtil Utility functions for composing metrics. 
ResourceUtil Utility for reading configuration resources. 
RestApiHelper A helper class for performing REST API calls. 
RestartSystemServerTargetPreparer Target preparer that restarts the system server without rebooting the device. 
ResultAggregator Special forwarder that aggregates the results when needed, based on the retry strategy that was taken. 
ResultAndLogForwarder Forwarder for results and logs events. 
ResultForwarder A ITestInvocationListener that forwards invocation results to a list of other listeners. 
ResultsPlayer Special runner that replays the results given to it. 
RetentionFileSaver Helper class for creating a .retention file in a directory. 
RetryConfigurationFactory Factory that handles retrying a command. 
RetryLogSaverResultForwarder Forwarder that also handles passing the current attempt we are at. 
RetryPreparationDecision A Class to describe the decisions about whether or not to retry preparation and to fail the module run. 
RetryRescheduler A special runner that allows to reschedule a previous run tests that failed or where not executed. 
RetryRescheduler.RetryType The types of the tests that can be retried. 
RetryResultForwarder An Extension of ResultForwarder that always push to a given attempt number. 
RetryResultHelper Helper class to determine which module or test should run or not. 
RetryStatistics Structure holding the statistics for a retry session of one IRemoteTest
RetryStrategy The Retry Strategy to be used when re-running some tests. 
RootTargetPreparer Target preparer that performs "adb root" or "adb unroot" based on option "force-root". 
RunConfigDeviceRecovery Generic base IMultiDeviceRecovery to run a tradefed configuration to do the recovery step. 
RunHostCommandTargetPreparer Target preparer to run arbitrary host commands before and after running the test. 
RunHostScriptTargetPreparer Target preparer which executes a script before running a test. 
RunInterruptedException Thrown when a run operation is interrupted by an external request. 
RunNotifierWrapper Wrapper of RunNotifier so we can carry the DeviceNotAvailableException
RunOnSdkSandboxHandler Handler for ModuleParameters#RUN_ON_SDK_SANDBOX
RunOnSdkSandboxTargetPreparer An ITargetPreparer to marks that tests should run in the sdk sandbox. 
RunOnSecondaryUserTargetPreparer An ITargetPreparer to ensure that the test runs as a secondary user. 
RunOnSystemUserTargetPreparer An ITargetPreparer that marks that tests should be run on the user (rather than the current user). 
RunOnWorkProfileTargetPreparer An ITargetPreparer that creates a work profile in setup, and marks that tests should be run in that user. 
RuntimeRestartCollector Collector that collects timestamps of runtime restarts (system server crashes) during the test run, if any. 
RunUtil A collection of helper methods for executing operations. 
RustBenchmarkResultParser Interprets the output of tests run with Criterion benchmarking framework and translates it into calls on a series of ITestInvocationListeners. 
RustBinaryHostTest Host test meant to run a rust binary file from the Android Build system (Soong) 
RustBinaryTest A Test that runs a rust binary on given device. 
RustTestBase Base class of RustBinaryHostTest and RustBinaryTest 
RustTestResultParser Interprets the output of tests run with Rust's unittest framework and translates it into calls on a series of ITestInvocationListeners. 


SandboxConfigDump Runner class that creates a IConfiguration based on a command line and dump it to a file. 
SandboxConfigurationException Special Configuration Exception coming from the Sandbox setup. 
SandboxConfigurationFactory Special Configuration factory to handle creation of configurations for Sandboxing purpose. 
SandboxConfigUtil A utility class for managing IConfiguration when doing sandboxing. 
SandboxedInvocationExecution Special sandbox execution of the invocation: This is the InvocationExection for when we are inside the sandbox running the command. 
SandboxInvocationRunner Run the tests associated with the invocation in the sandbox. 
SandboxOptions Class that can receive and provide options to a ISandbox
ScreenshotOnFailureCollector Collector that will capture and log a screenshot when a test case fails. 
Sdk28ModuleController A module controller to check if a device is on SDK 28 (Android 9) or above. 
Sdk29ModuleController Only run tests if the device under test is SDK version 29 or above. 
Sdk30ModuleController Only run tests if the device under test is SDK version 30 or above. 
Sdk31ModuleController Only run tests if the device under test is SDK version 31 or above. 
Sdk32ModuleController Only run tests if the device under test is SDK version 32 or above. 
Sdk33ModuleController Only run tests if the device under test is SDK version 33 or above. 
Sdk34ModuleController Only run tests if the device under test is SDK version 34 or above. 
Sdk35ModuleController Only run tests if the device under test is SDK version 35 or above. 
SecondaryUserHandler Handler for ModuleParameters#SECONDARY_USER
SecondaryUserOnDefaultDisplayHandler Handler for ModuleParameters#SECONDARY_USER_ON_DEFAULT_DISPLAY
SecondaryUserOnSecondaryDisplayHandler Handler for ModuleParameters#SECONDARY_USER_ON_SECONDARY_DISPLAY
SemaphoreTokenTargetPreparer This is a preparer used to use token to serialize test excution in tradefed host. 
SerializationUtil Utility to serialize/deserialize an object that implements ERROR(/Serializable)
ServiceAccountKeyCredentialFactory A credential factory to create service account key based oauth Credential
SettingsBaselineSetter A common setter to handle device baseline settings via ITestDevice.setSetting. 
ShardBuildCloner Helper class that handles cloning a build info from the command line. 
ShardHelper Helper class that handles creating the shards and scheduling them for an invocation. 
ShardListener A ITestInvocationListener that collects results from a invocation shard (aka an invocation split to run on multiple resources in parallel), and forwards them to another listener. 
ShardMainResultForwarder A ResultForwarder that combines the results of a sharded test invocations. 
ShellOutputReceiverStream Utility subclass of OutputStream that writes into an IShellOutputReceiver. 
ShellStatusChecker Check if the shell status is as expected before and after a module run. 
ShippingApiLevelModuleController Run tests if the device meets the following conditions:
  • If min-api-level is defined:
    • The device shipped with the min-api-level or later. 
ShowmapPullerMetricCollector Base implementation of FilePullerDeviceMetricCollector that allows pulling the showmap files from the device and collect the metrics from it. 
SideloadOtaTargetPreparer A target preparer that performs sideload of a specified OTA package, applies the package, waits for device to boot up, and injects the device build properties to use as build info

This target preparer assumes that the device will be in regular adb mode when started, and will ensure that the device exits in the same mode but with the newer build applied. 

SimpleFileLogger A ILeveledLogOutput that directs log messages to stdout and to a single log file. 
SimplePerfResult Object to hold all simpleperf test results 
SimplePerfStatResultParser A utility class to parse simpleperf result. 
SimplePerfUtil Utility class to dispatch simple command and collect results 
SimplePerfUtil.SimplePerfType Enum of simpleperf command options 
SimpleStats A small utility class that calculates a few statistical measures given a numerical dataset. 
SizeLimitedOutputStream A thread safe file backed ERROR(/OutputStream) that limits the maximum amount of data that can be written. 
SkipHWASanModuleController Base class for a module controller to not run tests on HWASan builds. 
SkipManager Based on a variety of criteria the skip manager helps to decide what should be skipped at different levels: invocation, modules and tests. 
SkipReason Provide a reason and its metadata for skipping a test. 
Sl4aBluetoothUtil A utility class provides Bluetooth operations on one or two devices using SL4A 
Sl4aBluetoothUtil.BluetoothAccessLevel Enums for Bluetooth device access level which are based on 
Sl4aBluetoothUtil.BluetoothConnectionState Enums for Bluetooth connection states which are based on 
Sl4aBluetoothUtil.BluetoothPriorityLevel Enums for Bluetooth profile priority level which are based on 
Sl4aBluetoothUtil.BluetoothProfile Enums for Bluetooth profiles which are based on 
Sl4aClient Sl4A client to interact via RPC with SL4A scripting layer. 
Sl4aEventDispatcher Event dispatcher polls for event and queue them by name to be queried. 
Sl4aEventDispatcher.EventSl4aObject Object returned by the event poller. 
SnapshotInputStreamSource A File-backed InputStreamSource. 
SnapuserdWaitPhase Enum representation of when to join/block for the snapuserd update to finish. 
SparseImageUtil Utility to unsparse sparse images. 
SparseImageUtil.SparseInputStream SparseInputStream read from upstream and detects the data format. 
StatsdBeforeAfterGaugeMetricPostProcessor A post processor that processes gauge metrics collected in a "before/after" approach, i.e. 
StatsdEventMetricPostProcessor A post processor that processes event metrics in statsd reports into key-value pairs, using the formatters specified on the processor. 
StatsdGenericPostProcessor A post processor that processes binary proto statsd reports into key-value pairs by expanding the report as a tree structure. 
StatusCheckerResult Contains the result of a ISystemStatusChecker execution. 
StdoutLogger A ILeveledLogOutput that directs log messages to stdout. 
StopServicesSetup A ITargetPreparer that stops services on the device. 
StreamProtoReceiver A receiver that translates proto TestRecord received into Tradefed events. 
StreamProtoResultReporter An implementation of ProtoResultReporter 
StreamUtil Utility class for managing input streams. 
StrictShardHelper Sharding strategy to create strict shards that do not report together, 
StringEscapeUtils Utility class for escaping strings for specific formats. 
StringUtil Utility class for escaping strings for common string manipulation. 
StubBuildProvider No-op empty implementation of a IBuildProvider
StubDevice Stub placeholder implementation of a IDevice
StubKeyStoreClient Default stub implementation for KeyStore Client. 
StubKeyStoreFactory Default stub implementation for KeyStore Factory 
StubLocalAndroidVirtualDevice A placeholder IDevice used by DeviceManager to allocate when DeviceSelectionOptions.localVirtualDeviceRequested() is true 
StubMultiTargetPreparer Placeholder empty implementation of a IMultiTargetPreparer
StubTargetPreparer Placeholder empty implementation of a ITargetPreparer
StubTest No-op empty test implementation. 
StubTestRunListener Stub implementation of ITestRunListener 
SubprocessCommandException A subprocess command failed to run. 
SubprocessConfigBuilder Build a wrapper TF config XML for an existing TF config. 
SubprocessEventHelper Helper to serialize/deserialize the events to be passed to the log. 
SubprocessEventHelper.BaseTestEventInfo Base Helper for TestIgnored information. 
SubprocessEventHelper.FailedTestEventInfo Helper for testFailed information. 
SubprocessEventHelper.InvocationEndedEventInfo Helper for invocation ended information. 
SubprocessEventHelper.InvocationFailedEventInfo Helper for InvocationFailed information. 
SubprocessEventHelper.InvocationStartedEventInfo Helper for invocation started information. 
SubprocessEventHelper.LogAssociationEventInfo Helper for logAssociation information. 
SubprocessEventHelper.TestEndedEventInfo Helper for testEnded information. 
SubprocessEventHelper.TestLogEventInfo Helper for testLog information. 
SubprocessEventHelper.TestModuleStartedEventInfo Helper for test module started information. 
SubprocessEventHelper.TestRunEndedEventInfo Helper for testRunEnded Information. 
SubprocessEventHelper.TestRunFailedEventInfo Helper for testRunFailed information 
SubprocessEventHelper.TestRunStartedEventInfo Helper for testRunStarted information 
SubprocessEventHelper.TestStartedEventInfo Helper for testStarted information 
SubprocessExceptionParser Helper to handle the exception output from standard Tradefed command runners. 
SubprocessReportingHelper A class to build a wrapper configuration file to use subprocess results reporter for a cluster command. 
SubprocessResultsReporter Implements ITestInvocationListener to be specified as a result_reporter and forward from the subprocess the results of tests, test runs, test invocations. 
SubprocessTestResultsParser Extends ERROR(/FileOutputStream) to parse the output before writing to the file so we can generate the test events on the launcher side. 
SubprocessTestResultsParser.StatusKeys Relevant test status keys. 
SubprocessTfLauncher A IRemoteTest for running tests against a separate TF installation. 
SuiteApkInstaller Installs specified APKs for Suite configuration: either from $ANDROID_TARGET_OUT_TESTCASES variable or the ROOT_DIR in build info. 
SuiteModuleLoader Retrieves Compatibility test module definitions from the repository. 
SuiteModuleLoader.ConfigFilter A ERROR(/FilenameFilter) to find all the config files in a directory. 
SuiteResultHolder Helper object to ease up serializing and deserializing the invocation results. 
SuiteResultReporter Collect test results for an entire suite invocation and output the final results. 
SuiteResultReporter.ModulePrepTimes Object holder for the preparation and tear down time of one module. 
SuiteTestFilter Represents a filter for including and excluding tests. 
SwitchUserTargetPreparer A ITargetPreparer that switches to the specified user kind in setUp. 
SystemServerFileDescriptorChecker Checks if system server appears to be running out of FDs. 
SystemServerStatusChecker Check if the pid of system_server has changed from before and after a module run. 
SystemUpdaterDeviceFlasher A IDeviceFlasher that relies on the system updater to install a system image bundled in a OTA update package. 
SystemUtil Utility class for making system calls. 


TableBuilder Helper class to display a matrix of String elements in a table. 
TableFormatter Helper class to display a matrix of String elements so each element column is lined up 
TargetSetupError A fatal error occurred while preparing the target for testing. 
TarUtil Utility to manipulate a tar file. 
TearDownPassThroughPreparer Allows for running tearDown on preparers that are included in a config as an object. 
TelephonyHelper A utility to use and get information related to the telephony. 
TelephonyHelper.SimCardInformation An information holder for the sim card related information. 
TelephonyTokenProvider Token provider for telephony related tokens. 
TemperatureThrottlingWaiter An ITargetPreparer that waits until device's temperature gets down to target 
TemplateResolutionError Class extending ConfigurationException for template related error during configuration parsing. 
TerribleFailureEmailHandler A simple handler class that sends an email to interested people when a WTF (What a Terrible Failure) error occurs within a Trade Federation instance. 
TestAppInstallSetup A ITargetPreparer that installs one or more apps from a IDeviceBuildInfo.getTestsDir() folder onto device. 
TestContentAnalyzer The analyzer takes context for the analysis and determine what is interesting. 
TestContext A class to model a TestContext message of TFC API. 
TestDependencyResolver Helper to resolve dependencies if needed. 
TestDescription Class representing information about a test case. 
TestDescriptionsFile A utility class for marshalling and unmarshalling a list of TestDescriptions to a test file. 
TestDevice Implementation of a ITestDevice for a full stack android device 
TestDevice.MicrodroidBuilder A builder used to create a Microdroid TestDevice. 
TestDeviceOptions Container for ITestDevice Option
TestDeviceState A more fully featured representation of device state than DeviceState
TestEnvironment A class to model a TestEnvironment message returned by TFC API. 
TestErrorIdentifier Error identifier from tests and tests runners. 
TestFailureModuleController Controller for module that simply want to tune how the tests failures log collected are behaving. 
TestFilePushSetup A ITargetPreparer that pushes one or more files/dirs from a IDeviceBuildInfo.getTestsDir() folder onto device. 
TestFilterHelper Helper class for filtering tests 
TestGroupStatus A class to store status of a test group. 
TestInfo Stores the test information set in a TEST_MAPPING file. 
TestInformation Holder object that contains all the information and dependencies a test runner or test might need to execute properly. 
TestInformation.Builder Builder to create a TestInformation instance. 
TestInvocation Default implementation of ITestInvocation
TestInvocation.RunMode The different mode an invocation can run into. 
TestInvocationManagementServer GRPC server helping to management test invocation and their lifecycle. 
TestMapping A class for loading a TEST_MAPPING file. 
TestMappingSuiteRunner Implementation of BaseTestSuite to run tests specified by option include-filter, or TEST_MAPPING files from build, as a suite. 
TestOption Stores the test option details set in a TEST_MAPPING file. 
TestOutputUploader Uploads test output files to local file system, GCS, or an HTTP(S) endpoint. 
TestRecordInterpreter Utility to convert a TestRecord proto into a more easily manipulable format in Tradefed. 
TestRecordProtoUtil Utility to read the TestRecord proto from a file. 
TestResource A class to model a TestResource message returned by TFC API. 
TestResourceDownloader A class to download test resource files from file system/GCS/HTTP. 
TestResult Container for a result of a single test. 
TestResultListener A simplification of ITestLifecycleListener for implementers that only care about individual test results. 
TestRunnerUtil A utility class to help various test runners. 
TestRunResult Holds results from a single test run. 
TestRunToTestInvocationForwarder Forwarder from ddmlib ITestRunListener to ITestLifeCycleReceiver
TestsPoolPoller Tests wrapper that allow to execute all the tests of a pool of tests. 
TestStatus Representation in Tradefed of possible statuses for test methods. 
TestSuiteInfo A class that resolves loading of build related metadata for test suite

To properly expose related info, a test suite must include a file in its jar resources 

TestSummary A class to represent a test summary. 
TestSystemAppInstallSetup A ITargetPreparer that installs one or more apps from a IDeviceBuildInfo.getTestsDir() folder onto the /system partition on device. 
TestTimeoutEnforcer Listeners that allows to check the execution time of a given test case and fail it if it goes over a given timeout. 
TextResultReporter A test result reporter that forwards results to the JUnit text result printer. 
TfMetricProtoUtil Utility class to help with the Map to Map transition. 
TfObjectTracker A utility to track the usage of the different Trade Fedederation objects. 
TfSuiteRunner Implementation of ITestSuite which will load tests from TF jars res/config/suite/ folder. 
TfTestLauncher A IRemoteTest for running unit or functional tests against a separate TF installation. 
TimeStatusChecker Status checker to ensure that the device and host time are kept in sync. 
TimeUtil Contains time related utility methods. 
TimeVal This is a sentinel type which wraps a Long
TimeWaster A simple target preparer to waste time and potentially restart the device. 
TokenProperty Supported token with dynamic sharding. 
TokenProviderHelper Helper that gives the provider associated to a particular token, in order to find out if a device supports the token. 
TraceCmdCollector A IMetricCollector that collects traces during the test using trace-cmd, and logs them to the invocation. 
TracePropagatingExecutorService An executor service that forwards tasks to an underlying implementation while propagating the tracing context. 
TracingLogger Class that helps to manage tracing for each test invocation. 
TradefedConfigObject A class to model a TradefedConfigObject message of TFC API. 
TradefedConfigObject.Type A list of configuration object types which can be injected to a cluster command config. 
TradefedDelegator Objects that helps delegating the invocation to another Tradefed binary. 
TradefedFeatureClient A grpc client to request feature execution from the server. 
TradefedFeatureServer A server that responds to requests for triggering features. 
TradefedSandbox Sandbox container that can run a Trade Federation invocation. 
TradefedSandboxFactory Default implementation for SandboxFactory 
TradefedSandboxRunner Runner associated with a TradefedSandbox that will allow executing the sandbox. 
TradefedSandboxRunner.StubScheduledInvocationListener A stub IScheduledInvocationListener that does nothing. 


UiAutomatorRunner Runs UI Automator test on device and reports results. 
UnexecutedTestReporterThread Threads that takes care of reporting all unexecuted tests. 
UniqueMultiMap<K, V> A MultiMap that ensures unique values for each key. 
UploadManifest A manifest of the BLOBs and files to upload. 
UsbResetMultiDeviceRecovery A IMultiDeviceRecovery which resets USB buses for offline devices. 
UsbResetRunConfigRecovery Allow to trigger a command to reset the USB of a device 
UsbResetTest An IRemoteTest that reset the device USB and checks whether the device comes back online afterwards. 
UserChecker Checks if users have changed during the test. 
UserCleaner A ITargetPreparer that removes secondary users on teardown. 
UserInfo Similar to UserInfo class from platform. 
UserInfo.UserType Supported variants of a user's type in external APIs. 


ValidateSuiteConfigHelper This class will help validating that the IConfiguration loaded for the suite are meeting the expected requirements: - No Build providers - No Result reporters 
VersionedFile Data structure representing a file that has an associated version. 
VersionParser Fetch the version of the running tradefed artifacts. 
VisibleBackgroundUserPreparer Target preparer for running tests in a user that is started in the visible in the background. 
VmRemoteDevice A Remote virtual device that we will manage from inside the Virtual Machine. 


WaitDeviceRecovery A simple implementation of a IDeviceRecovery that waits for device to be online and respond to simple commands. 
WaitForDeviceDatetimePreparer A ITargetPreparer that waits for datetime to be set on device

Optionally this preparer can force a TargetSetupError if datetime is not set within timeout. 

WifiCommandUtil A utility class that can parse wifi command outputs. 
WifiCommandUtil.ScanResult Represents a wifi network containing its related info. 
WifiHelper Helper class for manipulating wifi services on device. 
WifiPreparer A ITargetPreparer that configures wifi on the device if necessary. 


XmlFormattedGeneratorReporter Implementation of the FormattedGeneratorReporter which format the suite results in an xml format. 
XmlResultReporter Writes JUnit results to an XML files in a format consistent with Ant's XMLJUnitResultFormatter. 
XmlSuiteResultFormatter Utility class to save a suite run as an XML. 
XmlSuiteResultFormatter.RunHistory Helper object for JSON conversion. 


YamlClassOptionsParser Helper to parse test runner information from the YAML Tradefed Configuration. 


ZipCompressionStrategy An ICompressionStrategy for creating zip archives. 
ZipUtil A helper class for compression-related operations 
ZipUtil2 A helper class for zip extraction that takes POSIX file permissions into account