CTS、CTS Verify、GTS测试以及GMS认证介绍
一、一些概念
① CTS测试
以自动化测试为基础,测试Android系统的兼容性;
② CTS Verify
一个手工测试的apk,完成自动化测试无法完成的操作(锁屏、蓝牙、摄像头等);
③ GTS
手机出口到国外,并且通过运营商出售,就i必须通过GTS测试;
④ GMS认证周期
手机通过CTS测试、CTS Verify以及GTS测试之后,就可以拿到GMS认证。但是GMS认证周期较长,一般需要3个月至半年。
⑤ MADA协议
全称Mobile Application Distribution Agreement(移动应用软件分发协议)。是谷歌和Android厂商之间签署的一个协议,根据该协议,手机厂商在推出采用Android设备前,必须预装所有Google应用,并且,要把Google Search、Google Play放在手机首屏,并以Google Search作为默认的搜索引擎。
二、GMS认证
2.1 认证背景
手机没有GMS认证,那么对于手机出口商而言,就没有了生产的产品走不了运营商通道,所以在欧美等由运营商主导的手机市场,GMS认证是十分必要的。但是没有GMS认证,Google也不会做限制,只是进不了运营商市场,第三世界市场,出于成本考虑(GMS认证需要收费),也就没装GMS认证。
2.2 GMS认证目的
- 提高产品android系统的兼容性和稳定性
- 授权Google的手机APP和服务
- 授权使用Android LOGO
- 产品可以进入欧美市场
2.3 GMS认证要求
- 必须申请与Google签署MADA协议(网站操作)
- 产品必须使用7.0以上的安卓版本
- 产品必须依次通过CTS测试、CTS Verify测试以及GTS测试
- 产品还可以通过CE、FCC、BT以及WIFI等硬件认证(这一部分不是GMS认证的硬性指标)
2.4 GMS认证流程
- 申请谷歌MADA协议
- 产品做硬件测试
- 提交测试报告给谷歌审核
- 获得谷歌认证授权
2.5 MADA协议申请流程
st=>start: 开始:https://www.android.com/certified/partners/
op1=>operation: 填写公司基本信息
op2=>operation: 向谷歌发起MADA请求
cond=>condition: 谷歌评估审核
e=>end: 结束
st->op1->op2->cond
cond(yes)->e
cond(no)->op1
三、CTS测试
3.1 CTS测试介绍
CTS测试全称为系列兼容测试(Compatibility Test suite),CTS是为了测试手机是否符合google定义的兼容性规范(Compatibility Definition)。从而基于Android的应用程序能在基于同一个api版本的设备上面运行。通过CTS测试的设备可以获得Android的商标,并且享受Android Market的权限。 CTS测试是一个基于uiautomator安卓原生自动化框架运行的自动化测试。通过CTS测试,保证系统的安全性和稳定性。
3.2 CTS测试的目的
由于Google系统的开源性,很多手机厂商基于安卓系统做出了深度优化,从而造成了安卓移动终端的碎片化,导致android终端的兼容性差的问题,严重影响用户体验。手机通过CTS测试,是市场得到了一个通过的规范:
- 让App提供更好的用户体验,用户可以选择更多的适合自己设备的app
- 让开发者设计更高质量的app
- 通过CTS的设备可以运行Android market
- CTS是免费的,很简单
3.3 CTS测试运行原理
在pc端安装CTS测试套件,安装完成后,就可以通过连接到pc端的数据线将测试用户发送至手机上,完成测试用例的执行,并且把执行结果返回给PC端。CTS测试套件下载连接如下:https://source.android.com/compatibility/cts/downloads
3.4 CTS测试套件目录文档结构
CTS目录结构-- docs-- logs 运行cs产生的log文件-- plans 运行计划-- results 测试结果-- testcases 测试用例配置-- respository-- resource 资源文件-- tools 运行工具
3.5 CTS测试环境准备
3.5.1 测试环境
① windows
windows环境,需要自己重写脚本
- 电脑端配置JDK/SDK的环境
- 将解压后的测试套件(文件名android-cts)拷贝至adt目录下的sdk目录
② Linux(推荐64位UBUNTU 10.04)
一般来说,linux上运行较为稳定,所以手机厂商都是在linux端跑cts测试
- 电脑端配置JDK/SDK的环境
- 将测试套件解压至pc端/data目录下
3.5.2 测试准备工作
- 下载需要进行测试的软件版本(ROM)
- 插入可用的SIM卡(双开手机,需确保卡1有sim卡)
- 写入合法的IMEI号(手机的身份证,每一个手机都会有唯一的一个IMEI号)
- 连接一个可翻墙的WIFI网络(可以使用香港专线,网络比较稳定)
3.5.3 手机端配置
- 手机恢复出厂设置
- 手机语言设置为英语
- 手机需常亮并取消锁屏
- 开启GPS
- 开启USB调试后勾选stay awake和allow mock location
- 安装CtsDeviceAdmin.apk(位于android-cts/repository/testcases),进入setting->security->device administrators的前两项
- 确保手机SD卡有>1G的存储空间
- 确保手机没有谷歌账号或其他账号存在
- 确保手机时间和日期设置正确(连接数据后,会自动更新时间,时区选择默认时区) ...(其余在CDD文档中有定义)
3.5 CTS测试流程
- 手机和PC连接,打开USB调试模式,用adb devices检查是否连接好手机
- 在/data进入android-cts/tools/目录,执行cts-tradefed脚本进入测试环境
- 在测试环境中输入以下命令进行整体测试
3.6 查看测试结果
3.6.1 测试结果存放路径
android-cts/repository/results/testResult.xml
3.6.2 测试日志存放路径
android-cts/repository/logs/
四、GTS测试
4.1 GTS测试介绍
谷歌移动服务测试套件(Google Mobile Services Test Suite),谷歌移动服务提供了Search、 Search by Voice、Gmail、Contact Sync、 Calendar Sync、Talk、 Maps、 Steet View、 YouTube、 Android Market (Play store)等服务,当用户使用谷歌时,谷歌可以把各种广告嵌入到谷歌的服务中。
4.2 GTS授权级别
根据GMS,谷歌对android手机给与不同程度的授权,把搭载android系统的手机厂商分为3个级别:
- 免费使用Android系统,但不内嵌GMS
- 内嵌部分GMS,但手机不能打上谷歌的商标
- 内嵌所有GMS服务,也可以使用谷歌商标。如果在android手机中内置有谷歌GMS服务的话,是等同被谷歌官方认证的产品 4.3 GTS测试流程 GTS的环境安装、执行、报告分析这一系列操作和CTS类似,只是GTS必须连接VPN。 4.3.1 手机环境准备
- 刷好GMS版本的ROM包
- 恢复手机出厂设置
- 设置手机、连接外网
- 插入SIM卡,打开移动数据
- 打开蓝牙
- 显示中睡眠时间显示最大
- 竖屏
- 语言选择英语
- 键盘选择谷歌键盘
- 打开定位、高精度
- 安全中锁屏选择None
- 时间将自动获取时间和日期关闭,选择太平洋时区、24小时制
- 在开发者模式中打开stay awake和USB debugging 4.3.2 执行GTS测试
- 开始全部GTS测试
run gts --plan GTS
单跑某一模块的GTS测试
run gts -plan 'Module Name' -t 'class name'
接着某一次中断的gts测试跑
run gts --retry session_id
其中session_id可由lr查看
五、获取GMS认证
通过GMS认证后,就可以申请到一个GMS的APK的包,可以将这些谷歌应用集成到手机系统里面。通过GMS认证的手机,可以在Googie play中看到如下内容:
转自:CTS、CTS Verify、GTS测试以及GMS认证介绍 - 腾讯云开发者社区-腾讯云
CTS/GTS/STS/VTS/CTS-Verifier 测试培训 - 小专栏
Android XTS 测试入门_起个ID好难的博客-CSDN博客_android xts测试
谷歌CTS测试之GTS测试简介_又是十年春的博客-CSDN博客_gts测试
CTS、CTS Verify、GTS测试以及GMS认证介绍相关推荐
- CTS、CTS Verify、GTS测试以及GMS认证
目录 一.一些概念 二.GMS认证 2.1 认证背景 2.2 GMS认证目的 2.3 GMS认证要求 2.4 GMS认证流程 2.5 MADA协议申请流程 三.CTS测试 3.1 CTS测试介绍 3. ...
- QA:GMS认证、CTS测试、GTS测试、谷歌认证、安卓认证,Android
本文954个字,正常大约需要阅读两到三分钟,完整阅读更精彩,欢迎评论关注收藏分享! Q:什么是GMS认证? A: GMS全称为Google Mobile Service,即谷歌移动服务,优秀的国外应用 ...
- CTS ( 19)---Android 8.1/GO GMS认证
Android 8.1/GO GMS认证 一.2018年最新的GMS需提供5份测试报告,其中包括以下测试: 1.正式版本的CTS测试 (正式版本指的是要拿来送认证的的版本) 2.正式版本的CtsVe ...
- CTS(10)---谷歌CTS测试之Verify简介
谷歌CTS测试之Verify简介 测试前的准备 2 硬件要求 2 设置 2 CTS 验证程序测试程序 3 具体测试要求 5 USB 配件 5 相机视野校准 8 导出测试报告 10 Android 兼容 ...
- CTS(22)---GMS认证-Android8.x新增cts测试(VTS下测试GSI版本)
GMS认证-Android8.x新增cts测试(VTS下测试GSI版本) 2 https://www.jianshu.com/p/3b1fbefc93ae GMS认证-Android8.x新增cts测 ...
- 未过GMS认证和CTS测试的ODM厂商如何使用google play
Google play store为了扩大自己的市场占有率,会让各大odm厂商预置GMS套件,但是前提是合法,即需要通过GMS认证,当然,未过认证的设备,在使用Google play store时,会 ...
- Android 装置CTS与GMS认证差异
合格的Android智慧型手机必须经过CTS与GMS认证. 不过, 坊间白牌或山寨品牌Android智慧型手机往往不是完全没认证, 就是只有CTS认证但无GMS认证. CTS与GMS认证两者有何差异? ...
- Google GMS认证测试几个名词
名词 全称 说明 GMS 全称为Google Mobile Service 即谷歌移动服务. CTS 全称为Compatibility Test Suite 意思就是兼容性测试,用于测试App和fr ...
- GMS认证-Android VTS测试
GMS认证-Android VTS测试 Darkt 关注 2018.01.22 21:17* 字数 1021 阅读 649评论 6喜欢 4 1.VTS简介 VTS的全称是 Vendor Test Su ...
最新文章
- jsoup HTML parser hello world examples--转
- Java 泛型背后的原理是什么?
- 科大星云诗社动态20210323
- 1月份Web服务器份额:Microsoft涨2.32%居亚
- 《Unix/linux编程实践教程》------重定向程序的I/O
- OSI七层模型详解 TCP/IP协议
- android:ImageView--scaleType属性
- asp编程实例:通过表单创建word的一个例子
- 魏俊妮《支持业务发展为核心的HR六大模块体系构建》课程大纲
- ZOJ2965 Accurately Say CocaCola! java
- python 读写文件 把爬取的图片信息写入文件
- java-URL短连接的生成(保证生成的唯一性)
- 测试IP和端口是否通
- 手机、手环NFC刷门禁卡
- %、.format()格式化
- 一文让你彻底理解关于消息队列的使用
- filza修改版本号_苹果iOS12修改微信提示音Filza无法下载安装怎么办?
- ANSYS Products 2020 R1 Linux64版本安装
- sqlserver相关资料
- jsp+ssm+mysql实现图书馆预约占座管理系统项目
热门文章
- macbook air适合学java,神舟7月9日发轻薄笔记本新品 比MacBook Air还要薄?
- 计算机应用基础(专)【7】
- Linux技术社区—蜗窝科技
- KEIL5创建新工程模板 以及文件简介概述
- Mutual Supervision for Dense Object Detection(ICCV2021)阅读笔记
- 北京大学计算机科学技术研究所研究员万小军:机器写稿技术与应用 | CCF-GAIR 2017...
- 汇编——从一道题目浅谈分支结构
- css3如何实现动画效果
- 计算机的基本配件图片,计算机硬件的重要部件
- 从零开始实现mini-min网易云音乐(一)