长生栈 长生栈
首页
  • 编程语言

    • C语言
    • C++
    • Java
    • Python
  • 数据结构和算法

    • 全排列算法实现
    • 动态规划算法
  • CMake
  • gitlab 安装和配置
  • docker快速搭建wordpress
  • electron+react开发和部署
  • Electron-创建你的应用程序
  • ImgUI编译环境
  • 搭建图集网站
  • 使用PlantUml画时序图
  • 友情链接
关于
收藏
  • 分类
  • 标签
  • 归档
GitHub (opens new window)

Living Team

编程技术分享
首页
  • 编程语言

    • C语言
    • C++
    • Java
    • Python
  • 数据结构和算法

    • 全排列算法实现
    • 动态规划算法
  • CMake
  • gitlab 安装和配置
  • docker快速搭建wordpress
  • electron+react开发和部署
  • Electron-创建你的应用程序
  • ImgUI编译环境
  • 搭建图集网站
  • 使用PlantUml画时序图
  • 友情链接
关于
收藏
  • 分类
  • 标签
  • 归档
GitHub (opens new window)
  • 计算机视觉

  • ESP32开发

  • Linux系统移植

  • 快速开始

    • gitlab 安装和配置
    • docker快速搭建wordpress
    • electron+react开发和部署
    • Electron-创建你的应用程序
    • ImgUI编译环境
    • 搭建图集网站
    • CTS测试
      • 工作流程
      • 测试用例的类型
      • 涵盖的领域
    • Ubuntu 22.04 安装docker和docker compose
  • 编程小知识

  • 技术
  • 快速开始
DC Wang
2022-10-13
目录

CTS测试

# 兼容性测试套件(CTS)

官方文档见 https://source.android.com/docs/compatibility/cts?hl=zh-cn

兼容性测试套件 (CTS) 是一个免费的商业级测试套件,可以下载 (opens new window)二进制文件版本,也可以在 Android 开源项目 (AOSP) (opens new window) 中下载源代码版本。CTS 代表兼容性“机制”。

CTS 在桌面设备上运行,并直接在连接的设备或模拟器上执行测试用例。CTS 是一套单元测试,目标是与工程师构建设备的日常工作流程(例如通过连续构建系统)相集成。其目的是尽早发现不兼容性,并确保软件在整个开发过程中保持兼容性。

CTS 是一个自动化测试套件,包括两个主要的软件组件:

  • CTS Trade Federation (opens new window) 自动化测试框架会在桌面设备上运行,并管理测试执行情况。此框架可实现对多个被测设备 (DUT) 进行分片测试 (opens new window)。您还可以利用套件重试 (opens new window)功能仅重试失败的测试而不是完整的套件,从而大大减少重新运行所花的时间。
  • 单独的测试用例会在 DUT 上执行。测试用例采用 Java 语言编写为 JUnit 测试,并打包为 Android .apk 文件,以在实际目标设备上运行。

兼容性测试套件验证程序(CTS 验证程序)是对 CTS(可在此处下载 (opens new window))的补充。针对没有手动输入(例如音频质量、加速度计等)就无法在固定设备上测试的 API 和功能,CTS 验证程序可测试这些 API 和功能。

CTS 验证程序是一款手动测试工具,包含以下软件组件:

  • 在 DUT 上执行并收集结果的 CTS 验证程序应用。

  • 在桌面设备上执行的可执行文件或脚本,可为 CTS 验证程序应用中的某些测试用例提供数据或额外控制。

# 工作流程

图 1. 如何使用 CTS

上图总结了 CTS 工作流程。有关详细说明,请参阅本部分的子页面(从设置 (opens new window)开始)。

# 测试用例的类型

CTS 包含以下类型的测试用例:

  • 单元测试用于测试 Android 平台中微小的代码单元;例如 java.util.HashMap 等单一类。
  • 功能测试会通过较高级别的用例将 API 组合到一起进行测试。

CTS 的未来版本将包含以下类型的测试用例:

  • 稳健性测试会测试系统在压力下的耐久性。
  • 性能测试会根据定义的基准测试系统的性能,例如每秒渲染帧数。

# 涵盖的领域

单元测试用例涵盖以下领域,以确保兼容性:

领域 说明
签名测试 每个 Android 版本中都包含一个 XML 文件,用于描述这一版本所含的所有公开 API 的签名。CTS 包含一个实用工具,该实用工具用于根据设备上可用的 API 检查这些 API 签名。签名检查的结果会记录在测试结果 XML 文件中。
平台 API 测试 按照 SDK 类索引 (opens new window)所述内容来测试平台(核心库和 Android 应用框架)的 API,以确保 API 的正确性,包括正确的类、属性、方法签名以及正确的方法行为;此外还需进行负面测试,以确保不正确的参数处理产生预期行为。
Dalvik 测试 这类测试侧重于测试 Dalvik 可执行格式的文件。
平台数据模型 CTS 会测试通过内容提供程序(如 SDK android.provider (opens new window) 软件包中所述)提供给应用开发者的核心平台数据模型:通讯录、浏览器、设置等。
平台 Intent CTS 会测试核心平台 Intent(如 SDK 可用 Intent (opens new window) 中所述)。
平台权限 CTS 会测试核心平台权限(如 SDK 可用权限 (opens new window)中所述)。
平台资源 CTS 会测试核心平台资源类型(如 SDK 可用资源类型 (opens new window)中所述)的处理是否正确。这包括针对以下资源的测试:简单值、可绘制对象、九宫格、动画、布局、样式和主题,以及加载备用资源。
编辑 (opens new window)
上次更新: 2023/03/31, 22:34:04
搭建图集网站
Ubuntu 22.04 安装docker和docker compose

← 搭建图集网站 Ubuntu 22.04 安装docker和docker compose→

最近更新
01
ESP32-网络摄像头方案
06-14
02
ESP32-PWM驱动SG90舵机
06-14
03
ESP32-实时操作系统freertos
06-14
更多文章>
Theme by Vdoing | Copyright © 2019-2025 DC Wang All right reserved | 辽公网安备 21021102001125号 | 吉ICP备20001966号-2
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式