As part of the Android Compatibility Program, Google gives smartphone OEMs access to a Compatibility Test Suite (CTS). The suite includes a collection of over two million test cases that OEMs use to weed out bugs early in the smartphone development process so that users get a consistent app experience across various devices. However, the CTS mostly includes tests written by Android engineers with little input from app developers. To give app developers a chance to share their “Unique perspectives on actual device compatibility issues,” Google has now introduced CTS-D.
CTS-D is a new CTS module that includes compatibility tests written by app developers. It already consists of a few tests contributed by the community, and Google is now inviting more developers to build and contribute test cases to catch app compatibility issues they face. The company further notes: “We know that many of you have already created your own tests to verify compatibility on various devices. We want to work with you to bring those tests into AOSP. ”
To submit a new test, you can file a proposal using this template before contributing your test code to AOSP. The Android team will then review your submission to verify its eligibility. Currently, Google is inviting app developers to submit Power Management test cases.
At the very least, Google says that if a device doesn’t pass a CTS-D test, then devs can report the problem on the Issue Tracker and Google will “work with” the partner to resolve it.
– Mishaal Rahman (@MishaalRahman) June 23, 2022
Along with app developers, Google is also “Strongly advising” smartphone OEMs to use CTS-D to identify and mitigate issues. However, the company does not strictly require OEMs to run CTS-D tests to pass device certification. Consequently, some OEMs might not run CTS-D tests on their devices. If that turns out to be the case, app developers will have the option to file a report if a device does not pass a CTS-D test using this issue tracker template. Google says it will then work with OEM partners to resolve it.
Source: Android Developers Blog