谷歌CTS测试简介
来源:互联网 发布:rtsp端口是什么 编辑:程序博客网 时间:2024/05/30 05:04
CTS测试
1.设置CTS(物理环境)
WLAN 和 IPv6
CTS 测试需要满足以下要求的 WLAN 网络:支持IPv6,可以将被测设备(DUT) 视为隔离客户端,并可以连接到互联网。隔离客户端是一种配置,可将DUT 配置为无法接收子网络上的广播/多网消息;这种配置可通过WLAN AP 配置或通过在未连接其他设备的隔离子网络上运行DUT 来实现。
如果您无法访问原生 IPv6网络、IPv6运营商网络或 IPv6 VPN,以致无法通过基于IPv6 的一些测试,则可以改为使用WLAN 接入点和IPv6 隧道。请参阅维基百科 IPv6隧道代理列表。
蓝牙 LE信标
如果 DUT支持蓝牙 LE功能,则至少应在距离 DUT五米的范围内放置三个蓝牙 LE信标,以进行蓝牙 LE扫描测试。这些信标可以为任何类型,不需要进行配置或发射任何特定信号,并且可以包括 iBeacon、Eddystone甚至模拟 BLE信标的设备。
台式机设置
CTS 目前支持 64 位Linux 和Mac OS 主机。
ADB 和 AAPT
在运行 CTS之前,请确保您已安装最新版本的 Android调试桥 (adb) 和 Android资源打包工具 (AAPT),并将这些工具的位置添加到计算机的系统路径中。
要安装 ADB,请下载适用于您的操作系统的 Android SDK 工具包,打开它,然后按照附带的 README文件中的说明进行操作。要了解问题排查相关信息,请参阅安装独立 SDK工具。
确保 adb 和 aapt 位于您的系统路径中。以下命令假定您已在主目录中打开了软件包归档文件:
export PATH=$PATH:$HOME/android-sdk-linux/build-tools/<version>
注意:请确保起始路径和目录名称均准确无误。
Java 开发套件 (JDK)
安装适当版本的 Java开发套件 (JDK)。对于Android 7.0 -
· 在 Ubuntu上,使用 OpenJDK 8。
· 在 Mac OS上,使用 jdk 8u45或更高版本。
如需了解详情,请参阅 JDK要求。
CTS 文件
下载并打开与您设备的 Android 版本以及您的设备支持的所有应用二进制接口 (ABI)相匹配的 CTS包。
下载并打开最新版本的 CTS媒体文件。
设备检测
请按照相应的步骤设置您的系统以检测您的设备,例如为 Ubuntu Linux 创建 udev 规则文件。
Android 设备设置
用户版本
兼容的设备会被定义为具有用户/release-key签名版本的设备,因此您的设备应基于代号、标签和版本号中已知兼容的用户版本(Android 4.0 及更高版本)运行系统映像。
注意:使用 CTS确认最终系统映像的 Android兼容性时,您必须在具有用户版本的设备上执行 CTS。
第一个 API级别版本属性
特定的 CTS要求取决于设备最初搭载的版本。例如,如果设备最初搭载的是较低的版本,则不符合适用于搭载较高版本的设备的系统要求。
为了保证在 CTS中可读取到这些信息,设备制造商可以定义编译时属性:ro.product.first_api_level。该属性的值是以商业化形式发布该设备时所采用的第一个 API 级别。
原始设备制造商(OEM)可以将 PRODUCT_PROPERTY_OVERRIDES 添加到其device.mk 文件以设置这项属性,具体如以下示例所示:
#ro.product.first_api_level indicates the first api level, device has been commercially launched on.
PRODUCT_PROPERTY_OVERRIDES +=\
ro.product.first_api_level=21
注意:对于产品的第一个版本,ro.product.first_api_level属性应取消设置 (0);而对于所有后续版本,该属性应设置为正确的API 级别值。通过这种方式,该属性可以正确识别新产品,而且我们不会丢失任何关于产品第一个API 级别的信息(0值意味着 ro.product.first_api_level = Build.VERSION.SDK_INT)。
CTS Shim 应用
Android 7.0 包含以下预编译的应用(通过此来源编译),这些应用不包含除清单以外的任何代码:
· frameworks/base/packages/CtsShim/CtsShim.apk
该 apk文件将复制到系统映像上的 /system/app/CtsShimPrebuilt.apk。
· frameworks/base/packages/CtsShim/CtsShimPriv.apk
该 apk文件将复制到系统映像上的 /system/priv-app/CtsShimPrivPrebuilt.apk。
CTS 会使用这些应用来测试特权和权限。要通过测试,您必须将应用预加载到系统映像上的相应目录下,而无需对它们重新签名。
存储空间要求
CTS 媒体压力测试要求将视频剪辑存放在外部存储设备 (/sdcard)上。大部分剪辑来自 Big Buck Bunny,其版权归 Blender Foundation 所有并已获得知识共享署名 3.0许可。
所需空间取决于设备支持的最大视频播放分辨率(要查看所需分辨率的平台版本,请参阅兼容性定义文档中的第 5部分)。请注意,被测设备的视频播放功能将通过 android.media.CamcorderProfile API(针对早期Android 版本)和 android.media.MediaCodecInfo.CodecCapabilities API(针对Android 5.0)进行检测。
以下是按最大视频播放分辨率列出的存储空间要求:
· 480x360:98 MB
· 720x480:193 MB
· 1280x720:606 MB
· 1920x1080:1863 MB
屏幕和存储空间
1. 任何没有嵌入式屏幕的设备都需要连接到屏幕。
2. 如果设备具有存储卡插槽,请插入空的 SD卡。请使用支持超高速 (UHS)总线且具有 SDHC或 SDXC容量的 SD卡,或使用至少具有 Class 10速度的 SD卡,以确保设备能够通过 CTS。
警告:CTS可能会修改/清空插入设备的SD 卡上的数据。
3. 如果设备具有 SIM卡插槽,请将激活的 SIM卡插入每个插槽。如果设备支持短信,则应填充每个 SIM卡的号码字段。
开发者 UICC
为了执行 CTS运营商 API测试,该设备需要使用运营商授权的 SIM卡。请参阅准备 UICC。
Android 设备配置
1. 将设备恢复出厂设置:设置 >备份和重置 >恢复出厂设置
警告:这将清空设备中的所有用户数据。
2. 将设备的语言设置为英语(美国):设置 > 语言和输入法 >语言
3. 如果设备上具有 GPS或 WLAN/移动网络功能,则打开位置信息设置:设置 >位置信息 >开启
4. 连接到满足以下要求的 WLAN网络:支持 IPv6,可以将被测设备(DUT) 视为隔离客户端(请参阅上文的物理环境部分),并可以连接到互联网:设置 > WLAN
5. 确保设备上未设置锁定图案或密码:设置 >安全 >屏幕锁定 >无
6. 在设备上启用 USB调试:设置 >开发者选项 > USB调试。
注意:在 Android 4.2及更高版本中,默认情况下会隐藏开发者选项。要显示这些选项,请依次转到设置 > 关于手机,然后点按版本号七次。返回上一屏幕以查找开发者选项。要查看其他详细信息,请参阅启用设备上的开发者选项。
7. 确保将时间设置为 12小时格式:设置 >日期和时间 >使用 24小时制 >关闭
8. 依次选择:设置 >开发者选项 >不锁定屏幕 >开启
9. 依次选择:设置 >开发者选项 >允许模拟位置 >开启
注意:此模拟位置设置仅适用于 Android 5.x和 4.4.x。
10. 依次选择:设置 >开发者选项 >通过 USB验证应用 >关闭
注意:此验证应用步骤在 Android 4.2中为必需步骤。
11. 启动浏览器并关闭任何启动/设置屏幕。
12. 使用 USB数据线连接用于测试设备的台式机
注意:将运行 Android 4.2.2或更高版本的设备连接到计算机时,系统会显示一个对话框,询问您是否接受允许通过此计算机进行调试的 RSA 密钥。选择允许 USB调试。
13. 在设备上安装和配置帮助程序应用。
注意:对于 CTS版本 2.1 R2至 4.2 R4,请将您的设备(或模拟器)设置为通过以下命令执行无障碍测试:
adb install -r android-cts/repository/testcases/CtsDelegatingAccessibilityService.apk
在设备上,依次启用:设置 >无障碍 >无障碍 > Delegating Accessibility
注意:对于 7.0之前的 CTS版本,请在声明 android.software.device_admin 的设备上,将您的设备设置为使用以下命令执行设备管理测试:
adb install -r android-cts/repository/testcases/CtsDeviceAdmin.apk
依次选择“设置”>“安全”>“设备管理器”,然后启用两个 android.deviceadmin.cts.CtsDeviceAdminReceiver* 设备管理器。确保 android.deviceadmin.cts.CtsDeviceAdminDeactivatedReceiver 和任何其他预加载的设备管理器保持停用状态。
14. 将 CTS媒体文件复制到设备上,如下所示:
注意:对于 CTS 2.3 R12及更高版本,如果设备支持视频编解码器,则必须将 CTS媒体文件复制到设备上。
l 导航 (cd)到下载并解压缩媒体文件的目标路径。
l 更改文件权限:chmod u+x copy_media.sh
l 运行 copy_media.sh:
l 要复制分辨率高达 720x480的剪辑,请运行:./copy_media.sh 720x480
l 如果您不确定最大分辨率,请尝试运行 ./copy_media.sh all,以便复制所有文件。
l 如果 adb下有多个设备,请将 -s(序列号)选项添加到末尾。例如,要将高达720x480 的分辨率复制到序列号为1234567 的设备,请运行:./copy_media.sh 720x480 -s 1234567
2.运行CTS
运行测试计划的方法如下:
1. 至少连接一个设备。
2. 在开始运行 CTS时,按主屏幕按钮将设备设置为显示主屏幕。
3. 当设备在运行测试时,它不能用于执行任何其他任务,并且必须保持静止状态(以免触发传感器活动),同时要让相机指向某个可以聚焦的对象。
4. 在运行 CTS时,不要按设备上的任何键。按测试设备上的键或触摸其屏幕会干扰正在运行的测试,并且可能导致测试失败。
5. 通过运行解压缩 CTS包所得的文件夹中的 cts-tradefed脚本(例如 $ ./android-cts/tools/cts-tradefed)来启动 CTS 控制台。
6. 通过附加以下命令启动默认测试计划(包含所有测试包):run cts --plan CTS。这将启动测试兼容性所需的所有 CTS 测试。
· 对于 CTS v1(Android 6.0及更早版本),您可以输入 list plans 来查看存储区中的测试计划列表,也可以输入 list package 来查看存储区中的测试包列表。
· 对于 CTS v2(Android 7.0及更高版本),您可以输入 list modules 来查看测试模块的列表。
7. 或者,使用以下命令从命令行中运行您选择的 CTS计划:cts-tradefed run cts --plan
注意:仅在运行 Android 6.0 (Marshmallow) CTS 时,我们建议您使用 --skip-preconditions 选项来跳过在执行CTS 测试时可能导致问题且存在前提条件的实验性功能测试。
8.
9. 查看控制台中报告的测试进度和结果。
10. 如果您的设备运行的是 Android 5.0或更高版本,并且声明支持 ARM和 x86 ABI,则应运行ARM 和x86 CTS 包
- 谷歌CTS测试简介
- 谷歌CTS测试之GTS测试简介
- 谷歌CTS测试之Verify简介
- CTS简介
- cts 测试
- cts 测试
- CTS测试
- CTS 测试
- CTS测试
- cts测试
- 安卓CTS官方文档之兼容性测试套件简介
- CTS框架简介
- Android CTS 测试研究
- Android的CTS测试
- Android的CTS测试
- Android CTS 测试 过程
- Android CTS 测试总结
- Android CTS 测试
- 老司机带你学习GreenDao3
- (转)如何快速处理线上故障
- 监听器,request.session.servletcontext生命周期
- 在ubuntu16.04中如何使用caffe训练自带的mnist数据集
- 导入WeChatSDK_sample_Android项目报错
- 谷歌CTS测试简介
- 使用SSH-Keygen免密登录远端服务器
- PHP之文件操作
- jdbcTemplate使用
- MUI获取窗口链接地址
- 「反向传播」被替代!深度学习可使用「离散优化」方法实现
- 文章标题
- IntelliJ IDEA 下载安装以及破解
- Grails的领域类验证-constraints