Google XTS TV认证测试经验总结
Google XTS TV认证测试经验总结
一、简介
销往海外的Android电视,若想使用Google的应用程序和服务,如YouTube、Gmail、Google Play Store等,必须通过此认证,获得Google授权。
目前XTS认证测试包括以下测试套件:
二、测试环境搭建:
1.安装Windows/Ubuntu双系统,也可以只装Ununtu系统
2.制作U盘启动盘
1)安装制作工具:进入官网安装Rufus
2)插入用来做启动盘的U盘(最好是usb3.0接口,16GB或以上),格式化。
3)打开安装好的refus(此时设备栏自动显示你所插入U盘的设备名称,无需调配),点击选择,选择刚刚下好的Ubuntu镜像文件。
4)格式化选项采用默认即可,点击开始。
3.U盘启动盘制作完成
1.将U盘插入待安装的电脑中
2.重启电脑,按F1/Esc/delete/F10/F11/F12键(不同品牌电脑快捷启动键不同)进入BIOS系统
3.在Security页面,关掉secure boot(即设置为disable),然后到Boot页面,如果有Fast Boot这一项(部分联想电脑有),也把它关掉,没有则忽略。
4.在Boot页面下方启动项选择 USB HDD启动,然后安装Ubuntu
三、配置XTS环境
1.在终端输入sudo apt update
2.在终端输入sudo apt upgrade
3.在终端输入sudo apt install android-sdk ;选择y,下载时间因网速而定,大概15分钟左右。
4.继续输入以下命令:
①Install Python development kit:
sudo apt-get install python-dev
②.Install Protocal Bufer tools (for Python):
sudo apt-get install python-protobuf
sudo apt-get install protobuf-compiler
③.Install Python virtual environment-related tools:
sudo apt-get install python3-virtualenv
sudo apt-get install python3-pip
完成环境配置
四、下载测试套件
测试套件下载地址:
platform-tools:https://developer.android.com/studio/releases/platform-tools#downloads xts2020:https://docs.partner.android.com/partners/announcements/test-suite/ CTS:https://source.android.com/compatibility/cts/downloads GTS:https://docs.partner.android.com/gms/testing/gts VTS/GSI:https://docs.partner.android.com/gms/testing/vts?hl=en GSI: https://drive.google.com/drive/u/0/folders/0B4f5jMEb_K3TemhDZWQ1UUV2c00 GSI(新):https://pan.baidu.com/s/1aMt4mnVm1FsGWoco5roZFA?pwd=ucef 提取码:ucef STS:https://drive.google.com/drive/u/0/folders/0B85mEDAGzAbsckRrZgFhhV3YwTEk STS(新):https://drive.google.com/drive/u/0/folders/13rKssxUewbsRgytezYMAvveE3BlEX_yT
TVTS:https://docs.partner.android.com/tv/test/tvts/release-notes
CTS-verifier:https://source.android.com/compatibility/cts/downloads.html#android-70
下载以上工具包,并在Ubuntu中解压:分别为CTS、VTS、GTS、STS、TVTS、platform-tools、CTS-Verifier 8.将以上文件放置在/home/Test/XTS目录下(gts-konka-tv.json文件和boot-debug.img找开发要,测试Gts和VTS会用到)
五、测试方法
一、CTS,CTS Compatibility Test Suite 意为兼容性测试套件,是 Google 推出的 Android 平台兼容性测试机制。CTS 测试主要是测试 OEM 厂商设计的 Android 平台是不是符合 Android 的 API 接口定义。通过 CTS 测试不仅可以保证 Android 设备上正常运行,同时,也能够让所有的开发者放心地制作高质量的应用程序,因此只有通过 CTS 认证的设备才能合法的安装使用 Google market 等 Google 应用。
1.耗时:单次运行完72小时左右
2.测试方法:
①.断电上电,长按ESC键进入Rboot命令行: Realtek> env set bootargs_ex androidboot.serialno=hello123 Realtek> env save
②.Realtek> env set androidboot cts (讓測試過程不會sleep) Realtek> env save
③.进入TV菜单,Settings->Device Preferences->About->连按7次Android TV OS build进入开发者模式
④.进入Developer options菜单,将Stay awake设为on,将USB debugging打开
⑤.进入Ubuntu系统,打开命令行输入adb connect ip,如:adb connect 192.168.1.101,连接电视,连接时会弹出验证,此时需要选择确定,建议勾选“Always”选项
⑥.进入CTS测试套件,进入tools文件夹,右键打开命令行,输入:./cts.tradefed,再输入run cts开始测试
⑦.跑完查看测试结果,输入l r
⑧.如果有Fail项,需要retry时,输入run retry --retry (sessionID代表l r出来的结果对应行的首位数字),如run retry --retry 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)等服务,当用户使用谷歌时,谷歌可以把各种广告嵌入到谷歌的服务中。
1.耗时:单次运行完7小时左右
2.测试方法:
①.断电上电,长按ESC键进入Rboot命令行: Realtek> env set bootargs_ex androidboot.serialno=hello123 Realtek> env save
②.Realtek> env set androidboot cts (讓測試過程不會sleep) Realtek> env save
③.进入TV菜单,Settings->Device Preferences->About->连按7次Android TV OS build进入开发者模式
④.进入Developer options菜单,将Stay awake设为on,将USB debugging打开
⑤.进入Ubuntu系统,打开命令行输入adb connect ip,如:adb connect 192.168.1.101,连接电视,连接时会弹出验证,此时需要选择确定,建议勾选“Always”选项
⑥.配置Authentication key:(RD提供,建议放置路径:/home/Google XTS/android-gts/key) 端口输入:export APE_API_KEY=‘/home/Google XTS/android-gts/gts-konka-tv.json’
⑦.进入/home/Google XTS/android-gts/tools 输入命令:./gts-tradefed 输入命令:run gts
三、CTS-ON-GSI ,Generic System Image,即Reference AOSP system image 意为通用系统映像上的兼容性测试套件,这个文件包也是签约获取授权后才能获取,Google也会定期更新GSI包。 GTS 工具 Android R 之前使用 VTS Tool,Android R 之后用 CTS Tool.
1.耗时:单次运行完72小时左右
2.测试方法:
①.断电上电,长按ESC键进入Rboot命令行: Realtek> env set bootargs_ex androidboot.serialno=hello123 Realtek> env save
②.Realtek> env set ethaddr 00:10:20:30:40:xx (必須每塊板子不同MAC 不然會打架) Realtek> env save
③.Realtek> env set androidboot cts (讓測試過程不會sleep) Realtek> env save
④.进入TV菜单,Settings->Device Preferences->About->连按7次Android TV OS build进入开发者模式
⑤.进入Developer options菜单,将Stay awake设为on,将USB debugging打开
⑥.进入Ubuntu系统,打开命令行输入adb connect ip,如:adb connect 192.168.1.101,连接电视,连接时会弹出验证,此时需要选择确定,建议勾选“Always”选项
⑦.进入CTS测试套件,进入tools文件夹,右键打开命令行,输入:./cts.tradefed,再输入run cts-on-gsi开始测试
⑧.跑完查看测试结果,输入l r
⑨.如果有Fail项,需要retry时,输入run retry --retry (sessionID代表l r出来的结果对应行的首位数字),如run retry --retry 1
四、VTS Vendor Test Suite 意为 供应商测试套件。以前Android的系统升级是很麻烦的,为了能更快的将设备升级到新的Android版本,Android O 开始新引入了 Project Treble,Project Treble 适用于搭载 Android O 及后续版本的所有新设备。Android 7.x 及更早版本中没有正式的Vendor层接口,因此每次更新系统都相对耗时和困难。Android O 之后,Treble 提供了稳定的Vendor层接口,供设备制造商访问 Android 代码中特定于硬件的部分,这样就可以只更新框架层,减少升级系统带来的成本和困难。为了确保Vendor层实现的前向兼容性,新的Vendor层接口会由供应商测试套件 (VTS) 进行验证,该套件类似于兼容性测试套件 (CTS)。
测试方法:
1.下载platform-tools压缩包,下载地址:https://developer.android.com/studio/releases/platform-tools#downloads
2.将压缩包放置Ubuntu,如/home/zhuhuasen/XTS下
3.右键点击,选择Extact here(解压到此处)
4.找开发要GSI和boot-debug.img,并将boot-debug.img和GSI中system.img拷贝到解压后的platform-tools文件夹下
5.将系统环境变量OEMLock设置为off,方法: 电视连接串口,断电上电,开机时,按Esc键进入Rboot命令,输入env set OEMLock off,再输入env save。
6.进入Ubuntu输入以下命令,完成fastboot升级
①、adb -s ip reboot fastboot
②、./fastboot -s tcp:IP:5554 flash boot boot-debug.img
③、./fastboot -s tcp:IP:5554 flash system system.img
④、./fastboot -s tcp:IP:5554 -w
⑤、./fastboot -s tcp:IP:5554 reboot
7.断电上电,长按ESC键进入Rboot命令行: Realtek> env set bootargs_ex androidboot.serialno=hello123 Realtek> env save
8.Realtek> env set ethaddr 00:10:20:30:40:xx (必須每塊板子不同MAC 不然會打架) Realtek> env save
9.Realtek> env set androidboot cts (讓測試過程不會sleep) Realtek> env save
10.进入TV菜单,Settings->Device Preferences->About->连按7次Android TV OS build进入开发者模式
11.进入Developer options菜单,将Stay awake设为on,将USB debugging打开 .进入Ubuntu系统,打开命令行输入adb connect ip,如:adb connect 192.168.1.101,连接电视,连接时会弹出验证,此时需要选择确定,建议勾选“Always”选项
12.进入VTS测试套件,进入tools文件夹,右键打开命令行,输入:./vts.tradefed,再输入run vts开始测试
13.跑完查看测试结果,输入l r 13.如果有Fail项,需要retry时,输入run retry --retry (sessionID代表l r出来的结果对应行的首位数字),如run retry --retry 1
五、STS ,Android Security Test Suite (STS) 是谷歌关于android安全补丁安装情况的一个测试套件STS和security patch相关的,是CTS测试新增加一项安全测试套件。STS是201808才开始测试的。Security patch日期在3个月内是GTS的一个case,如果不通过无法获得google认证。在18年5月之前谷歌对于security patch这个属性都是在build库下面跟着aosp更新的。现在需要通过STS之后由vendor来更新。STS需要通过userdebug版本的targetfile来生成一个user版本的结果。 STS 工具 自行下载
Ⅰ、注意:测试时需要使用userdebug软件
Ⅱ、测试方法:
①.断电上电,长按ESC键进入Rboot命令行: Realtek> env set bootargs_ex androidboot.serialno=hello123 Realtek> env save
②Realtek> env set ethaddr 00:10:20:30:40:xx (必須每塊板子不同MAC 不然會打架) Realtek> env save
③.Realtek> env set androidboot cts (讓測試過程不會sleep) Realtek> env save
④.进入TV菜单,Settings->Device Preferences->About->连按7次Android TV OS build进入开发者模式
⑤.进入Developer options菜单,将Stay awake设为on,将USB debugging打开
⑥.进入Ubuntu系统,打开命令行输入adb connect ip,如:adb connect 192.168.1.101,连接电视,连接时会弹出验证,此时需要选择确定,建议勾选“Always”选项
⑦.进入CTS测试套件,进入tools文件夹,右键打开命令行,输入:./sts.tradefed,再输入run sts-engbuild开始测试
⑧.跑完查看测试结果,输入l r
⑨.如果有Fail项,需要retry时,输入run retry --retry (sessionID代表l r出来的结果对应行的首位数字),如run retry --retry 1
六、TVTS ,TvtsAssistantTest是google最近推出的关于TV的TVTS中的一个测试模块,用来测试系统健壮性(system health )的,主要是通过katniss(google 语音助手)查找天气、启动youtube等相关测试 本文基于android-tvts_r1.03版本进行说明;
Ⅰ测试方法:
1.断电上电,长按ESC键进入Rboot命令行: Realtek> env set bootargs_ex androidboot.serialno=hello123 Realtek> env save
2.Realtek> env set ethaddr 00:10:20:30:40:xx (必須每塊板子不同MAC 不然會打架) Realtek> env save
3.Realtek> env set androidboot cts (讓測試過程不會sleep) Realtek> env save
4.进入TV菜单,Settings->Device Preferences->About->连按7次Android TV OS build进入开发者模式
5.进入Developer options菜单,将Stay awake设为on,将USB debugging打开
6.进入Ubuntu系统,打开命令行输入adb connect ip,如:adb connect 192.168.1.101,连接电视,连接时会弹出验证,此时需要选择确定,建议勾选“Always”选项
7.将以下三个文件拷贝到套件的tools文件夹下 smokeTestsResults.json youTubeHdrSmokeTestsResults.json youTubeSdrSmokeTestsResults.json
8.通过adb shell getprop ro.build.fingerprint获取当前要测试的目标机器的fingerprint配置
9.修改上述三个文件中的fingerprint的值为要测试的目标机器的实际fingerprint配置
10.进入CTS测试套件,进入tools文件夹,右键打开命令行,输入:./tvts-tradefed,再输入run tvts-cert开始测试 .跑完查看测试结果,输入l r
11.如果有Fail项,需要retry时,输入run retry --retry (sessionID代表l r出来的结果对应行的首位数字),如run retry --retry 1
七、CTS-V ,CTS Verifier 算是CTS的一部分,需要手动进行,主要用于测试那些自动测试系统无法测试的功能,比如相机、传感器等。由于硬件配置或其他原因,不同电视上部分测试项目被隐藏,也就是说CTS Verifier中case的总数,取决于测试机支持哪些功能。
1.耗时:手动测试完需24小时左右
2.测试方法:
①.adb连接TV与PC。安装CtsVerifier.apk至电视机。adb install -r -g CtsVerifier.apk
②.测试手机安装CtsVerifier.apk
③.进入TV菜单,Settings->Apps->See all apps->CTS Verifier->Permissios,将所有权限都打开
④.进入CTS Verifier测试APP,手动执行每一项测试,详细测试方法请参看CTS Verifier文档
⑤.测试机在CtsVerifier程序的右上角选择保存,然后会弹出结果保存的路径。 (如:storage/emulated/0/verifierReports/2019.04.10_08.58.24-CTS_VERIFIER-HKC-Logik_2K_ATV_EU-ueno-PI.zip)
⑥.进入TV菜单,Settings->Device Preferences->About->连按7次Android TV OS build进入开发者模式
⑦.测试电脑连接TV,输入命令:adb connect 192.168.1.106(根据电视实际ip来写)adb pull /结果保存路径/XX.zip /结果放置路径。来提取结果。 如:adb pull storage/emulated/0/verifierReports/2019.04.10_08.58.24-CTS_VERIFIER-HKC-Logik_2K_ATV_EU-ueno-PI.zip / (将结果保存至服务器的根目录或其他目录)
原文链接
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
所有评论(0)