GTS: Testing GMS Compliance
The Google Test Suite (GTS) is a proprietary, closed-source test suite available only to official Android partners. While CTS verifies compatibility with the open-source Android platform, GTS specifically verifies compatibility with Google Mobile Services (GMS).
GTS ensures that:
- Google apps (Play Store, YouTube, Gmail) are pre-loaded in the correct partitions with the correct permissions.
- The device meets specific performance and memory requirements necessary for a good Google Assistant experience.
- Widevine DRM implementations are secure and functional for media streaming.
Because GTS tests closed-source components, AOSP engineers rarely interact with it directly unless they work for an OEM integrating GMS.
ATS (Automotive Test Suite) for AAOS
As Android expands beyond mobile phones, specialized test suites are created for new form factors. The Automotive Test Suite (ATS) is designed explicitly for Android Automotive OS (AAOS) vehicles.
ATS runs alongside CTS to verify automotive-specific features:
- Vehicle HAL (VHAL): Ensuring the OS can correctly read and write to the CAN bus (e.g., HVAC controls, speedometer, gear selection).
- Car Audio: Verifying complex multi-zone audio routing policies.
- Driver Distraction: Testing that restricted UIs are enforced while the vehicle is in motion.
Test Suite Differences and Applications
Understanding when to run which suite is critical for a release engineer:
- CTS (Compatibility Test Suite): Open source. Focuses on the public SDK. Everyone must pass this to be "Android".
- VTS (Vendor Test Suite): Open source. Focuses on the HALs and Kernel (Project Treble). Ensures the vendor partition is upgradeable.
- GTS (Google Test Suite): Closed source. Focuses on GMS apps and proprietary Google features. Required only if you want Google apps on the device.
- ATS (Automotive Test Suite): Specialized. Required for AAOS devices to ensure vehicle safety and hardware integration.
# Example TradeFed invocation for ATS (if you have the binaries)
./android-ats/tools/ats-tradefed
ats-tf > run ats
OEMs integrate all these suites into a massive continuous integration pipeline, often running on server farms connected to hundreds of physical devices to catch regressions immediately.