GTS的全称是Google Mobile Services Test Suite,所谓的Google Mobile Services即谷歌移动服务,是谷歌开发并推动Android的动力,也是Android系统的灵魂所在。GMS目前提供有Search、Search by Voice、Gmail、Contact Sync、Calendar Sync、Talk、Maps、Street View、YouTube、Android Market (ICS 上更改为Play store)服务。当用户使用谷歌的时候,谷歌可以把广告嵌入各种谷歌的服务中。

依据GMS,谷歌对android手机给予不同程度的授权,把搭载Android系统的手机厂商分为三个级别

  1. 免费使用Android操作系统,但不内嵌GMS。

  2. 内嵌部分GMS,但手机不能打上谷歌的商标。

  3. 内嵌所有的GMS服务,也可以使用谷歌商标。如果在android手机中内置有谷歌GMS服务的话,是等同被谷歌官方认证过的产品。

GTS的环境安装、执行、报告分析这一系列操作跟CTS一样,只是GTS必须连接VPN,整个测试过程需要1到2个小时,如果网速不好,测试时间也相对较长。具体测试步骤如下:

  1. 刷机成需要测试的版本;

  2. 连接到一个比较高速率的wifi,并且保证能上VPN;

  3. 设置屏幕无操作30分钟后休眠,即Settings -> Display -> Sleep to 30 minutes;

  4. 设置Settings -> Developer Options -> check "Stay awake" option,其中的Developer Options可以通过点击七次Build number出现。

  5. 设置Settings -> Developer Options -> check "USB debugging" 选项。

  6. 设置Settings -> Developer Options –> uncheck "Verify apps over USB" 选项。

  7. 设置Settings -> Security -> Screen lock –> None。

  8. 如果有谷歌浏览器是默认浏览器的话,需要做一些precondition,否则可能会由于打开谷歌浏览器时的一些初始画面fail掉一些case。

    · 打开谷歌浏览器

    · 如果出现 "Welcome to Chrome" ,点击”ACCEPT & CONTINUE”

    · 如果出现 "Set up Chrome,点击 “NO THANKS”

  9. 点击右下角的menu键,删除所有的recent app。

  10. PC端的操作:

    · 安装了java7

    · 安装了adb

接下来是具体跑GTS:

  1. Google官网下载最新的GTS测试包,解压到你的Linux电脑上,连接手机,通过adb device检测手机是否连接至电脑。

  2. 进入android-xts/tools路径下,如图1所示。

  

                                图1 进入android-xts/tools目录

  3. 通过”./xts-tradefed” 运行脚本,即进入GTS控制台,同时会识别到已连接的手机,如图2所示。

  

                                  图2 执行xts-tradefed脚本

  4. 之后再控制台输入”run xts --plan XTS” 可以run全部的GTS packages,run起来之后会首先穿件存储结果的文件夹,之后才开始run package,如图3所示。

  

                                  图3 run full GTS

  5. 在第一轮之后如果有not executed状态的case,可以通过”run xts --continue-session session_ID” 继续run not executed的case,其中的session_ID可以通过”l r”查看,如图4所示。

  

                            图4 continue not executed case

  6. 一般保证测试中的fail项run 三遍,所以当第一轮跑完之后可以通过 ” add derivedplan --plan <plan_name> -s <session> -r fail ” 来专门创建session中fail项的plan,创建之后可以通过 ”l p”查看是否成功创建plan_name,确保创建成功 之后通过 ”run xts --plan plan_name”来rerun fail项了,如图5所示。

  

                              图5 add and run fail plan

  7. 测试结果会自动生成到android-xts/repository/results中,会存储到日期加时间的文件夹中,其中的xtsTestResult.xml可以用火狐浏览器打开,查看详细的测试结果,如图6所示。

                                    图6 详细测试结果

到此为止GTS从环境搭建到测试结果分析已经全部完成了!

Android兼容性测试GTS-环境搭建、测试执行、结果分析的更多相关文章

  1. android测试开发环境搭建

    本文档针对未接触过android的0基础人员,在开始熟悉android之前,首先需要一个学习环境来支撑,在此简单介绍一下android环境搭建.(当然大家也可以百度.谷歌,类似的文档很多) 环境搭建: ...

  2. 大数据基础-2-Hadoop-1环境搭建测试

    Hadoop环境搭建测试 1 安装软件 1.1 规划目录 /opt [root@host2 ~]# cd /opt [root@host2 opt]# mkdir java [root@host2 o ...

  3. Nginx配置多个基于域名的虚拟主机+实验环境搭建+测试

    标签:Linux 域名 Nginx 原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://xpleaf.blog.51cto.com/9 ...

  4. Android下OpenCV的环境搭建

    目录(?)[-] 前言 系统环境 相关工具 Android ADT环境搭建 Android SDK环境变量的配置 Android NDK的安装与配置 OpenCV for Android 环境搭建 基 ...

  5. android Jni NDK开发环境搭建及其简单实例的编写

    android  Jni  NDK开发环境搭建及其简单实例的编写 由于工作需要,需要采用开发想要的JNI,由于之前没有接触过安卓的开发,所以更加网上的帖子,学习了下.遇到了些问题,然后总结下学习过程中 ...

  6. android 5.0开发环境搭建

    Android 5.0 是 Google 于 2014 年 10 月 15 日发布的全新 Android 操作系统.本文将就最新的Android 5.0 开发环境搭建做详细介绍. 工具/原料 jdk- ...

  7. 一、Android学习第一天——环境搭建(转)

    (转自:http://wenku.baidu.com/view/af39b3164431b90d6c85c72f.html) 一. Android学习第一天——环境搭建 Android 开发环境的搭建 ...

  8. Android NDK r8 windows环境搭建

    Android NDK r8 windows环境搭建 一.默认基础环境为已经完成Android开发环境的搭建 需要的软件及插件 1. JDK-7u25 2. Eclipse 3. Android SD ...

  9. Android下NDK开发环境搭建

    Android下NDK开发环境搭建 1.     AndroidNDK安装与配置 1.1  NDK简介 Android NDK是一套允许开发人员使用本地代码(如C/C++)进行Android APP部 ...

  10. (一)phoneGap之环境搭建教程及其example分析

    phoneGap之环境搭建教程及其example分析 一.环境搭建 与普通的开发android应用一样,phoneGap也同于原生android应用一样,环境相同,只是有部分不同,下面就我做理解,进行 ...

随机推荐

  1. 1047 - Best couple 好题~

    http://www.ifrog.cc/acm/problem/1047 思路很简单,跑一发floyd,然后再用km. 但是问题来了,这个有可能n != m.那怎么办? 其实可以补上一些不存在的点.来 ...

  2. Android -Cannot run program "XXX/sdk/tools/emulator": error=2, No such file or directory

    I have installed android SDK and eclipse successfully on ubuntu 14.04. However,now it's not running. ...

  3. Spring相关BUG

    今天从云开发平台上生成的代码报Spring相关的错误. 我找到第一处错误,整理如下: org.springframework.beans.factory.BeanCreationException: ...

  4. deepin15.2无线网无法使用

    原文链接:https://bbs.deepin.org/forum.php?mod=viewthread&tid=40276&highlight=%E6%97%A0%E7%BA%BF% ...

  5. 优秀Java程序员的四大忌,你避免了吗?

    做为一名优秀的程序员需要具备永不放弃的精神,如果一个程序员不具备这种永不放弃的精神,那么这个程序员只能算是一名假程序员.而通往成功的道路上往往是不平坦的,想要成为一个合格的高级Java程序员,需要规避 ...

  6. Obj-C Memory Management

    Memory management is one of the most important process in any programming language. It is the proces ...

  7. mongodb复制集里查看主从操作日志oplog

    MongoDB的replica set架构是通过一个日志来存储写操作的,这个日志就叫做 oplog .oplog.rs 是一个固定长度的 Capped Collection,它存在于local数据库中 ...

  8. .net MVC下跨域Ajax请求(CORS)

    二.CROS (Cross-origin Resource Sharing) CROS相当于一种协议,由浏览器.服务端共同完成安全验证,进行安全的跨域资源共享.对于开发人员来说就跟在本站AJAX请求一 ...

  9. 漫谈 Clustering (4): Spectral Clustering<转载>

    转自http://blog.pluskid.org/?p=287 如果说 K-means 和 GMM 这些聚类的方法是古代流行的算法的话,那么这次要讲的 Spectral Clustering 就可以 ...

  10. BestCoder Round#15 1001-Love

    http://acm.hdu.edu.cn/showproblem.php?pid=5082 Love Time Limit: 2000/1000 MS (Java/Others)    Memory ...