兼容性测试套件 (CTS) 是一个免费的商业级测试套件,设备制造商使用它来帮助确保其设备与 Android 兼容,以及报告测试结果以供验证。CTS 旨在集成到工程师构建设备的日常工作流程(例如通过连续构建系统)中。其目的是尽早发现不兼容性,并确保软件在整个开发过程中保持兼容性。
您可以下载 CTS 的二进制文件,也可以在 Android 开源项目 (AOSP) 中下载 CTS 的源代码。CTS 在桌面设备上运行,并直接在连接的设备或模拟器上执行测试用例。
CTS 包含两个主要软件组件:兼容性测试套件验证程序(CTS 验证程序)和兼容性测试套件验证程序(CTS 验证程序)。CTS 验证程序可用于测试需要进行手动输入(例如音频质量和加速度计)或手动定位才能在固定设备上测试的 API 和功能。
CTS 验证程序是一款手动测试工具,包含以下软件组件:在 DUT(以及为了满足距离测量要求而用到的第二个设备)上执行并收集结果的 CTS 验证程序应用。在桌面设备上执行的可执行文件或脚本,可为 CTS 验证程序应用中的某些测试用例提供数据或额外控制。
上图总结了 CTS 工作流程。有关详细说明,请参阅本部分的子页面(从设置开始)。
CTS 包含以下类型的测试用例:单元测试用于测试 Android 平台中微小的代码单元;例如 java.util.HashMap 等单一类。功能测试会通过较高级别的用例将 API 组合到一起进行测试。单元测试覆盖率方面,单元测试用例涵盖了签名检查、平台 API 测试、Dalvik 测试等领域以确保兼容性。
CTS(Compatibility Test Suite)是谷歌为了确保Android设备上运行的应用程序与Android系统兼容而推出的一种测试方案。它主要针对核心平台数据模型、Intent、权限和资源类型进行测试。具体包括以下几个方面:
1. 平台 Intent:CTS会测试核心平台Intent,如SDK中所述的可用Intent。这包括检查Intent的构建和解析过程是否正确,以及Intent的生命周期管理是否符合预期。
2. 平台权限:CTS会测试核心平台权限,如SDK中所述的可用权限。这包括检查应用程序在请求和使用不同权限时的行为是否符合规范,以及在用户拒绝授权的情况下,应用程序是否能够正常运行。
3. 平台资源:CTS会测试核心平台资源类型的处理是否正确。这包括对以下资源类型进行测试:简单值(如字符串、数字等)、可绘制对象(如图片、图形等)、九宫格布局、动画、布局、样式和主题,以及加载备用资源。这有助于确保应用程序在使用这些资源类型时能够正确地与系统资源进行交互。
通过执行CTS测试,开发者可以确保他们的应用程序在各种设备和Android版本上的表现一致,从而提高应用程序的兼容性和稳定性。同时,CTS测试结果也可以帮助开发者了解他们需要改进的地方,以便更好地优化应用程序性能。