GMS CTS测试命令汇总

news2024/11/24 7:58:23

目录

跑CTS之前的准备

样机环境要求

跑各模块版本要求

CTS

简介

复测上轮的失败项

多台设备测试

单跑指定模块和测试用例

GTS

VTS

STS

GSI

获取fingerprint


跑CTS之前的准备

样机环境要求

1、打开stay wake(保持屏幕常亮)、OEM unlocking、USB debugging(设置-开发者选项)

手机进入开发者模式

2、连接网络

3、adb devices   查看设备是否连接上 

4、插入有数据网络的SIM卡 (如有香港网络的卡插入一张)

跑各模块版本要求

测试项目

系统镜像

固件类型

设备状态

备注

CTS

OEM’s system.img

User

Locked

GTS

OEM’s system.img

User

Locked

GSI

GSI

User

Locked

VTS

GSI

User

Unlocked

root权限

STS

OEM’s system.img

Userdebug

Unlocked

root权限

CTS

简介

CTSCompatibility TestSuite的英文简写,意为兼容性测试CTS 测试主要是测试 OEM 厂商设计的 Android 平台是不是符合 Android 的 API 接口定义。通过 CTS 测试不仅可以保证 Android 设备上正常运行,同时,也能够让所有的开发者放心地制作高质量的应用程序,因此只有通过 CTS 认证的设备才能合法的安装使用 Google market 等 Google 应用。

先 ./cts-tradefed

run cts 测试全部

复测上轮的失败项

如果测了大模块,包含多测试项,有多项fail时,可以执行l r指令,查看当前最新的session_id,执行指令复测:run retry --retry <session_id> ,可以复测session_id测试时fail的项目以节省时间。

run retry --retry <session_id>   重试以前会话中失败或未执行的所有测试

run --retry   使用列表结果获取会话id

多台设备测试

多台设备测试:run cts --shard-count 3 --serial 0123456 --serial 123456 --serial 123

更多命令参考:

Android10 GMS测试命令_gms 安卓10-CSDN博客

单跑指定模块和测试用例

以下面case为例

  run cts-on-gsi -m CtsKeystorePerformanceTestCases(也可以用 armeabi-v7aCtsKeystorePerformanceTestCases  需要把中间的空格去掉) -t  android.keystore.cts.performance.AttestationPerformanceTest#testEcKeyAttestation

如果test case 太多,可以不加后面的 -t 部分。

GTS

Google Mobile Services Test Suite 意为谷歌移动服务测试套件,谷歌移动服务提供了Search、 Search by VoiceGmailContact Sync、 Calendar SyncTalk、 Maps、 Steet View、 YouTube、 Android Market (Play store)等服务,当用户使用谷歌时,谷歌可以把各种广告嵌入到谷歌的服务中。

先 ./gts-tradefed

run gts   测试全部

VTS

Vendor Test Suite 意为供应商测试套件。以前Android的系统升级是很麻烦的,为了能更快的将设备升级到新的Android版本,Android O 开始新引入了 Project TrebleProject Treble 适用于搭载 Android O 及后续版本的所有新设备。Android 7.x 及更早版本中没有正式的Vendor层接口,因此每次更新系统都相对耗时和困难。Android O 之后,Treble 提供了稳定的Vendor层接口,供设备制造商访问 Android 代码中特定于硬件的部分,这样就可以只更新框架层,减少升级系统带来的成本和困难。为了确保Vendor层实现的前向兼容性,新的Vendor层接口会由供应商测试套件 (VTS) 进行验证,该套件类似于兼容性测试套件 (CTS)

烧录步骤:

VTS :

1. Flash MTK user full load

2. Boot to home screen

3. Settings -> System -> Developer options -> OEM unlocking

4. Reboot phone into fastboot mode by "adb reboot bootloader" or "press volume up key + power key"

5. Connect phone to PC and then type following commands

6. fastboot flashing unlock (press volumn up key)

7. fastboot flash --disable-verity vbmeta vbmeta.img (vbmeta.img is MTK's vbmeta.img. Please get it from MTK load.)

Project which kernel is kernel-4.14 or kernel-4.19:

8. fastboot flash boot boot-debug.img (Please get boot-debug.img from MTK load.)

Project which kernel is kernel-5.10

8. fastboot flash vendor_boot vendor_boot-debug.img (Please get vendor_boot-debug.img from MTK load.)

9. fastboot reboot fastboot

10. fastboot flash system system.img (system.img is GSI.)

11. fastboot reboot

先 ./vts-tradefed

run vts   测试全部

STS

Android Security Test Suite 是谷歌关于android安全补丁安装情况的一个测试套件,STSsecurity patch相关的,是GMS测试新增加的一项安全测试套件。STS201808才开始测试的。Security patch日期在3个月内是GTS的一个case,如果不通过无法获得google认证。

先 ./sts-tradefed

run sts-dynamic-incremental

或者

run sts-dynamic-full

GSI

CTS-ON-GSIGenericSystemImage,Reference AOSP system image 意为通用系统映像上的兼容性测试套件,这个文件包也是签约获取授权后才能获取,Google也会定期更新GSI包。测试工具在Android R 之后用 CTS Tool

该模块是在CTS下跑,跑之前需要刷google的system.img

run cts-on-gsi   全部测试

run cts-on-gsi --shard-count 3 -s GSI00000001 -s GSI00000002 -s GSI00000003

重测命令:run retry -r 1 --shard-count 3 -s GSI00000001 -s GSI00000002 -s GSI00000003 STS测试(单台测试预计7小时)

GSI烧录如下图

1. Flash MTK user full load

2. Boot to home screen

3. Settings -> System -> Developer options -> OEM unlocking

4. Reboot phone into fastboot mode by "adb reboot bootloader" or "press volume up key + power key"

5. Connect phone to PC and then type following commands

6. fastboot flashing unlock (press volumn up key)

7. fastboot reboot fastboot

8. fastboot flash system system.img (system.img is GSI.)

9. fastboot reboot

获取fingerprint

机器过认证时需要让代理机构向google申请白名单和key,申请白名单前需要提供fingerprint

./gts-tradefed

run gts -m GtsEdiHostTestCases

注意:最后一轮时,fingerprint 不能变化。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1220620.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Java-Review

题型分值总分分布简答 5 ∗ 8 ′ 5*8 5∗8′ 4 0 ′ 40 40′面向对象、异常处理、多线程、输入输出处理程序分析和补全 3 ∗ 1 0 ′ 3*10 3∗10′ 3 0 ′ 30 30′异常处理、Collection、图形化界面、输入输出处理编程 2 ∗ 1 5 ′ 2*15 2∗15′ 3 0 ′ 30 30′Collections、多线…

腾讯云服务器怎么样好用吗?腾讯云服务器好用吗?

大家好&#xff01;今天我们要来聊聊腾讯云服务器怎么样&#xff0c;好用吗&#xff1f;对于这个问题&#xff0c;我的答案是非常肯定的——好用&#xff01; 那么&#xff0c;腾讯云服务器究竟好在哪里呢&#xff1f; 首先&#xff0c;它的功能非常强大。它不仅能够提供云存…

2023.11.17-hive调优的常见方式

目录 0.设置hive参数 1.数据压缩 2.hive数据存储格式 3.fetch抓取策略 4.本地模式 5.join优化操作 6.SQL优化(列裁剪,分区裁剪,map端聚合,count(distinct),笛卡尔积) 6.1 列裁剪: 6.2 分区裁剪: 6.3 map端聚合(group by): 6.4 count(distinct): 6.5 笛卡尔积: 7…

2023年中国涂料树脂需求量、市场规模及行业竞争现状分析[图]

涂料用树脂是涂料的主要原材料&#xff0c;是涂料的主要成膜物&#xff0c;且了为涂料成品提供耐醇、耐磨、耐高温、耐高湿、减少涂料在涂装完成后的损耗、保持涂装后外观以及性状的稳定性等功能。 根据生产产品的性状不同&#xff0c;其下游产品&#xff0c;即涂料成品广泛应用…

云网络流量分析工具的关键优势有哪些?

在当今数字化的时代&#xff0c;企业依赖云计算和网络服务以实现高效运营。随着云网络的复杂性不断增加&#xff0c;对网络流量的分析变得至关重要。云网络流量分析工具应运而生&#xff0c;为管理员提供了深入洞察、实时监控的能力。本文将探讨此工具的关键优势以及它们在现代…

君正X2100 读取CHIP_ID

每个处理器会有一个唯一的ID&#xff0c;这个ID可用做产品序列号&#xff0c;或其它。 X21000的CHIP_ID存放于芯片内部的efuse中&#xff0c;efuse是一次性可可编程存储器&#xff0c;初始值为全0&#xff0c;只能将0改为1&#xff0c;不能将1改为0。芯片出厂前会被写入一些信…

修改YOLOv5的模型结构第二弹

&#x1f368; 本文为&#x1f517;365天深度学习训练营 中的学习记录博客&#x1f356; 原作者&#xff1a;K同学啊 | 接辅导、项目定制&#x1f680; 文章来源&#xff1a;K同学的学习圈子 上节说到了通过修改YOLOv5的common.py来修改模型的结构&#xff0c;修改的是模块的内…

2023年【陕西省安全员B证】考试题库及陕西省安全员B证找解析

题库来源&#xff1a;安全生产模拟考试一点通公众号小程序 陕西省安全员B证考试题库是安全生产模拟考试一点通生成的&#xff0c;陕西省安全员B证证模拟考试题库是根据陕西省安全员B证最新版教材汇编出陕西省安全员B证仿真模拟考试。2023年【陕西省安全员B证】考试题库及陕西省…

分布式事务seata的使用

分布式事务介绍 在微服务架构中&#xff0c;完成某一个业务功能可能需要横跨多个服务&#xff0c;操作多个数据库。这就涉及到到了分布式事务&#xff0c;需要操作的资源位于多个资源服务器上&#xff0c;而应用需要保证对于多个资源服务器的数据操作&#xff0c;要么全部成功&…

深度学习_14_单层|多层感知机及代码实现

单层感知机&#xff1a; 功能&#xff1a; 能完成二分类问题 问题&#xff1a; 模型训练采用X*W b训练出模型&#xff0c;对数据只进行了一层处理&#xff0c;也就是说训练出来的模型仅是个线性模型&#xff0c;它无法解决XOR问题&#xff0c;所以模型在训练效果上&#xf…

cookie机制 + java 案例

目录 为什么会有cookie?? cookie从哪里来的&#xff1f;&#xff1f; cookie到哪里去&#xff1f;&#xff1f; cookie有啥用&#xff1f;&#xff1f; session HttpServletRequest类中的相关方法 简单的实现cookie登录功能 实现登录页面 实现servlet逻辑 实现生成主…

【Spring】依赖注入方式,DI的方式

这里写目录标题 1. setter注入在一个类中注入引用类型在一个类中注入简单类型 2. 构造器注入在一个类中注入引用类型在一个类中注入简单类型 3. 依赖注入方式选择4. 依赖自动装配按类型注入按名称注入 5. 集合注入 1. setter注入 在一个类中注入引用类型 回顾一下之前setter注…

Python基础:输入输出详解-输出字符串格式化

Python中的输入和输出是编程中非常重要的方面。 1. 输入输出简单介绍 1.1 输入方式 Python中的输入可以通过input()函数从键盘键入&#xff0c;也可以通过命令行参数或读取文件的方式获得数据来源。 1&#xff09;input()示例 基本的input()函数&#xff0c;会将用户在终端&…

力扣栈与队列--总结篇

前言 八道题&#xff0c;没想到用了五天。当然需要时间的沉淀&#xff0c;但是一天不能啥也不干啊&#xff01; 内容 首先得熟悉特点和基本操作。 栈与队列在计算机底层中非常重要&#xff0c;这就是为什么要学好数据结构。 可视化的软件例如APP、网站之类的&#xff0c;都…

Kotlin原理+协程基本使用

协程概念 协程是Coroutine的中文简称&#xff0c;co表示协同、协作&#xff0c;routine表示程序。协程可以理解为多个互相协作的程序。协程是轻量级的线程&#xff0c;它的轻量体现在启动和切换&#xff0c;协程的启动不需要申请额外的堆栈空间&#xff1b;协程的切换发生在用…

AVL树的底层实现

文章目录 什么是AVL树&#xff1f;平衡因子Node节点插入新节点插入较高左子树的左侧新节点插入较高左子树的右侧新节点插入较高右子树的左侧新节点插入较高右子树的右侧 验证是否为平衡树二叉树的高度AVL的性能 什么是AVL树&#xff1f; AVL树又称平衡二叉搜索树&#xff0c;相…

腾讯云服务器便宜吗?腾讯云服务器怎么买便宜?附优惠链接

首先&#xff0c;咱们来看一下大家最关心的一个问题&#xff1a;“腾讯云服务器便宜吗&#xff1f;”我的答案是&#xff1a;“YES&#xff01;它真的很便宜&#xff01;”比如&#xff0c;轻量2核2G3M服务器&#xff0c;1年只需要88元&#xff0c;是不是很划算&#xff1f;再比…

实例解释遇到前端报错时如何排查问题

前端页面报错&#xff1a; 1、页面报错500&#xff0c;首先我们可以知道是服务端的问题&#xff0c;需要去看下服务端的报错信息&#xff1a; 2、首先我们查看下前端是否给后端传了id: 我们可以看到接口是把ID返回了&#xff0c;就需要再看下p_id是什么情况了。 3、我们再次请…

基于ssm+vue的程序设计课程可视化教学系统设计与实现

末尾获取源码 开发语言&#xff1a;Java Java开发工具&#xff1a;JDK1.8 后端框架&#xff1a;SSM 前端&#xff1a;vue 数据库&#xff1a;MySQL5.7和Navicat管理工具结合 服务器&#xff1a;Tomcat8.5 开发软件&#xff1a;IDEA / Eclipse 是否Maven项目&#xff1a;是 目录…

双11背后的中国云厂商:新“标准化”,和调整后的新韧性

降价并不代表一味的压缩自身利润空间&#xff0c;云厂商已经开始向具有更高利润空间的PaaS、SaaS产品腾挪&#xff0c;核心产品在总包占比越来越高。 作者|斗斗 编辑|皮爷 出品|产业家 今年云厂商&#xff0c;全面拥抱双11。 作为中国最大的云计算服务提供商&#xff0…