【转】Android兼容性测试CTS Verifier-环境搭建、测试执行、结果分析

原文网址:http://www.cnblogs.com/zh-ya-jing/p/4452675.html

CTS Verifier算是CTS的一部分,需要手动进行,主要用于测试那些自动测试系统无法测试的功能,比如相机、传感器等。由于硬件配置或其他原因,不同手机上部分测试项目被隐藏,也就是说CTS Verifier中case的总数,取决于测试机支持哪些功能,

CTS Verifier总共包含以下15个功能:

· Camera

· Clock

· Device administration

· Features

· Hardware

· Job scheduler

· Location

· Managed Provisioning

· Networking

· Notifications

· Others

· Projection tests

· Security

· Sensors

· Streaming

测试之前的准备工作:

1. 从http://source.android.com/compatibility/downloads.html 中下载CTS Verifier的测试包并解压,如图1所示。

图1 CTS Verifier测试包下载

2. 把测试机刷成需要测试的版本。

3. 安装*/android-cts-verifier/CtsVerifier.apk。

4. 设置手机语言为English。

5. 打开蓝牙,无需配对。

6. 打开并连接可用wifi。

7. 请再另外准备一台手机,以便测server和client相关的case。

8. 必须首先测试Data Backup Tests, 因为如果做完别的测试之后,Data Backup Test测试失败,会清空测试log,所以必须最先做。

接下来就可以开始各个feature的测试了,以下是各个feature的测试办法总结。

Camera FOV Calibration

进入测试后点击屏幕拍照后点击Done 按钮(请保持点击频率不要过快,否则有可能引起应用报错),继续重复上述操作四次,第四次之后会自动返回cts-verifier主界面,同时显示测试结果,绿色为pass,红色为fail。

Camera Formats

先后预览Camera0 与Camera1在NV21和YV12模式下,各个分辨率的相机预览正确型后,选择PASS或者Fail。

Camera Intents

该测试主要分为4 步:

1. 点击Start Test 按钮开始测试,按HOME 键回到桌面选择并进入相机应用后拍摄一张照片,再次返回桌面,点击cts-verifier,如果PASS 按钮可点击则PASS,否则请检测操作是否正确并多次进行该操作,直到可以点击PASS 按钮。

2. 点击Start Test 按钮开始测试,按HOME 键回到桌面选择并进入相机应用后拍摄一个视频(不限时间),再次返回桌面,点击cts-verifier,

如果PASS 按钮可点击则PASS,否则请检测操作是否正确并多次进行该操作直到可以点击PASS 按钮。

3. 点击Start Test 按钮开始测试,自动跳转到相机后点击拍照,并点√进行保存,点击PASS 按钮。

4. 点击Start Test 按钮开始测试,自动跳转到录像机后拍摄一段视频,并点√进行保存,点击PASS 按钮。

Camera Orientation

该测试主要测试相机预览已经旋转视图的正确性,如图(例如该测试的第二项,检测预览是否正确,预览、拍照成像是否已经旋转90°,如果都正确这点击PASS),如图2所示。

图 2 Camera Orientation

Camera Video

该测试主要验证前后摄像头不同画质下的拍摄。先选择Camera0 摄像头与LOW 画质选项,点击Test。开始拍摄,稍后录像内容回放是如果检查拍摄无误,则更换HIGH 画质继续测试,以此类推。

Alarms and Timers Test

该测试主要验证闹钟已经计时器的正常运行,如果7项测试全部pass则点击PASS ,否则点击Fail。

Show Alarms Test

  点击Show Alarms,正常进入闹钟列表后,按返回键回到测试界面,点击Pass。

Set Alarms Test

  点击Set Alarm 按钮,进入闹钟界面,成功添加一组闹钟后,按返回键回到测试界面,点击Pass。

Start Alarms Test

  点击Set Alarm,等待一分多钟以后,如果闹钟响,则点击Pass。

Full Alarm Test

  点击Create Alarm 按钮,自动进入闹钟列表后查看是否有一个时间为:01:23,名称为“Create Alarm Test”的闹钟,如果有,返回点击PASS(闹钟详细信息如图3所示)

图 3 Full Alarm Test

Set Timer Test

  点击Set timer 按钮就进入计时器界面后,手动设置一个倒计时,计时成功后返回cts-verifier,点击Pass 按钮。

Start Timer Test

  点击Start Timer 按钮后,手机自动生成一个30s 的计时器,计时器正常响起后点击PASS。

Start Timer with UI Test

  点击Start Timer 按钮后,手机自动进入Timer,并生成一个30s 的计时器,计时器正常响起后点击PASS。

Policy Serialization Test

进入测试后点击“GENERATE POLICY”按钮,再次点击“APPLY POLCY”按钮,点击“ACTIVE”按钮,点击“OK”以激活cts-verifier 设备管理器,按返回键返回cts-verifier测试目录,重启手机,再次进入Policy Serialization Test ,如果测试项全亮则点击Pass,如图4所示。

图4 Policy Serialization Test

Screen Lock Test

进入测试后(弹出提示框均为说明提示,点击OK 即可),点击Force Lock按钮,手机熄屏并上锁,按电源键唤醒屏幕,使用当前设置的解锁方式解锁,符合该操作流畅则PASS, 否则Fail。此处屏幕解锁方式不能为None。

Hardware/Software Feature Summary

进入测试后没有发现红色Fail 项,即可点击Pass,如图5所示。

图5 Hardware/Software Feature Summary

GPS Test

将手机置于空旷无阻挡的环境中,当所有的GPS的选项都通过时,屏幕会有pass的提示。注意有时网络不稳定时可能会失败,建议失败时多测试几次。

NFC Test

该功能是允许手机在接触其他硬件设备(交通卡,门禁卡等)时交换数据, 很多手机不支持这个功能,请仔细确认。如果5项测试全部pass, 则点击PASS,否则点击Fail。目前手机不支持,所以没有具体测试步骤,之后更新文档。

NDEF Push Sender

NDEF Push Receiver

NDEF

HCE reader tests

HCE emulator tests

USB Accessory Test

一般需要使用如下adb驱动版本

SUBSYSTEM="usb",ATTRS{idVendor}=="18d1",ATTRS{idProduct}=="2d01",MODE="0666"

SUBSYSTEM="usb",ATTRS{idVendor}=="18d1",ATTRS{idProduct}=="e781",MODE="0666", 添加到/etc/udev/rules.d/51-android.rules文件中,添加步骤如下:

1. Ctrl+Alt+T 调出终端,输入“cd /etc/udev/rules.d”;

2. 输入“sudo gedit 51-android.rules”,之后输入用户密码;在打开的51-android.rules文件中添加:

SUBSYSTEM="usb",ATTRS{idVendor}=="18d1",ATTRS{idProduct}=="2d01",MODE="0666"

SUBSYSTEM="usb",ATTRS{idVendor}=="18d1",ATTRS{idProduct}=="e781",MODE="0666"

3. Ctrl+S保存之后关闭即可;

但是特殊情况下,手机的Hardware ID会改变,此时手机连接PC,使用命令“lsusb”查看手机的ID,更改如下命令中的黄色部分:

SUBSYSTEM="usb",ATTRS{idVendor}=="18d1",ATTRS{idProduct}=="e781",MODE="0666"

安装好adb驱动之后,进入*/android-cts-verifier,通过命令“./cts-usb-accessory”,执行脚本。正常情况下手机会弹出确认信息,点击确认后,手机端会发送一些message,此时pass选项亮显,则pass,否则fail,如图6,图7所示。

 

图6 PC message                                       图7 手机截图

Charging Constraints

拔掉USB,然后“START TEST”亮显,点击“START TEST”,等待几秒钟,第一个case显示绿色,然后插入USB,等待几秒钟,第二条case亮显,点击pass,否则点击fail。

Connectivity Constraints

关闭WiFi和数据流量,“START TEST”亮显,点击“START TEST”,等待几秒钟,底下三条case全部显示绿色,点击pass,否则点击fail。

Idle Mode Constraints

关闭屏幕,再次打亮屏幕,“START TEST”亮显,点击“START TEST”,等待几秒钟,底下两条case全部显示绿色,点击pass,否则点击fail。

Battery Saving Mode Test

点击第一个“LAUNCH SETTINGS”,打开Location,返回到cts-verifier,点击第二个“LAUNCH SETTINGS”,把location mode选为“Battery saving”,返回到cts-verifier,底下四条case都显示绿色,点击pas,否则点击fail。

Device Only Mode Test

点击第一个“LAUNCH SETTINGS”,打开Location,如果之前location就是打开状态,那第一个“LAUNCH SETTINGS”则是灰显的。直接点击第二个“LAUNCH SETTINGS”,把location mode选为“Device only”,返回到cts-verifier,底下四条case都显示绿色,点击pas,否则点击fail。

High Accuracy Mode Test

点击第一个“LAUNCH SETTINGS”,打开Location,如果之前location就是打开状态,那第一个“LAUNCH SETTINGS”则是灰显的。直接点击第二个“LAUNCH SETTINGS”,把location mode选为“High accuracy”,返回到cts-verifier,底下四条case都显示绿色,点击pas,否则点击fail。

Location Mode Off Test

点击 “LAUNCH SETTINGS”,关闭Location,返回到cts-verifier,底下四条case都显示绿色,点击pas,否则点击fail。

Device Owner Provisioning

点击“Device owner negative test”,点击“START PROVISIONING”,弹出显示“The device is already set up”的对话框后,点击OK,点击pass,否则点击fail。

Bluetooth Test

该功能是测试手机蓝牙的,需要另外一台安装了CtsVerifier.apk的手机(暂且叫做Refer)与测试机一起,分别进行server和client,测试相关的case。如果5项测试全部pass, 则点击PASS,否则点击Fail。

Toggle Bluetooth

  点击“ENABLE BLUETOOTH”,弹出对话框,选择“ALLOW”,蓝牙被打开。点击“DISABLE BLUETOOTH”,蓝牙被关闭,PASS亮显,点击pass,否则fail。

Insecure Client

  Refer手机打开Insecure Server,测试机点击“SCAN FOR DEVICES”,搜索到refer之后,点击refer,连接即可,点击pass,如果没有搜到,建议把client和server重新开关,多试几次。

Insecure Server

  测试机点击进入 Insecure Server,Refer手机打开Insecure Client,点击“SCAN FOR DEVICES”,搜索到测试机后,点击refer,连接即可,则测试机点击pass,如果没有搜到,建议把client和        server重新开关,多试几次。

Secure Client

  与Insecure Client操作一样,只是搜到之后要输入配对密码。

Secure Server

  与Insecure Server操作一样,只是搜到之后要输入配对密码。

Wi-Fi Direct Test

该功能是测试手机WiFi的,需要另外一台安装了CtsVerifier.apk的手机(暂且叫做Refer)与测试机一起,分别进行server和client或者requester和responder,测试相关的case。如果6项测试全部pass, 则点击PASS,否则点击Fail。

GO Negotiation Responder Test

  测试原理同蓝牙相似。

GO Negotiation Requester Test

  测试原理同蓝牙相似。

Group Owner Test

  测试原理同蓝牙相似。

Group Client Test

  测试原理同蓝牙相似。

Service Discovery Responder Test

  测试原理同蓝牙相似。

Service Discovery Requerter Test

  测试原理同蓝牙相似。

CA Cert Notification Test

这个测试检查,当安装CA 证书时,是否有用户通知,里面的按钮依次点击,全部有通知用户的对话框弹出,即为pass,否则fail。

CA Cert Notification on Boot Test

点击“CHECK CREDENTIALS”,查看安装的证书,然后点击“INSTALL CREDENTIAL”,返回到cts-verifier,点击pass。

Notification Attention Management Test

测试之前需要按如下步骤设置:Settings–>Sound & notification –> Interruptions –> “Calls/messages from” –>”Starred contacts only”

1.点击第一个“LAUNCH SETTINGS”,打开“Notification access”,如果之前Notification access处于打开状态,则直接进行下一步操作。

2.调节音量键,在音量显示界面,选择“None”,返回到cts-verifier,点击“I’M DONE”,等待十秒左右,底下一条case变绿。

3. 再次调节音量键,在音量显示界面,选择“All”,返回到cts-verifier,点击“I’M DONE”,等待一分钟左右,底下9条case变绿。

3. 第三次调节音量键,在音量显示界面,选择“Priority”,返回到cts-verifier,点击“I’M DONE”,等待十秒钟左右,底下2条case变绿,Pass亮显,则pass,否则fail。

Notification Listener Test

点击第一个“LAUNCH SETTINGS”,打开“Notification access”,返回cts-verifier,等待十秒左右,底下五条case全部变绿。点击第二个“LAUNCH SETTINGS”, 关闭“Notification access”,返回cts-verifier,底下两条case全部变绿,则pass,否则fail。

Data Backup Test

第一次进入本项测试时,会弹出一个对话框(英文测试说明),直接点击OK。

点击Generate Test Data 按钮后会弹出一个对话框,点击Settings 按钮进入备份,设置勾选Back up my data 如图(如果没有该项选项,请联系开放关闭宏),如图8所示。

图8 Data backup

勾选后按返回按钮回到cts-verifier,再次点击Generate Test Data 按钮,在弹出框点击OK 按钮并截图。

运行如下命令(可在XP 或Ubuntu 下运行):

adb shell bmgr enable true

adb shell bmgr transport

android/com.android.internal.backup.LocalTransport

adb shell bmgr run

adb uninstall com.android.cts.verifier

adb install APK path

再次打开cts-verifier 进入Data Back Test 查看各项数值与保存图片中的数值是否一致,如果一致则点击PASS,否则Fail!

Widget Framework Test

此测试检查Widget 框架的一些基本特征。为了进行测试,长按主屏幕任意位置,调出添加widgets的功能点击并添加名为CTS-verifier 的小部件到主屏幕。按照该插件的说明进行测试:

1. 点击cts-verifier 小部件中的Start Test 按钮。

2. 验证小部件的高度、宽度近似值。

3. 实时验证小部件的高度、宽度近似值(长按小部件后,可拖放改变该小部件大小)。

4. 直接Pass

5. 直接Pass

Projection Cube Test

点击进入,看到两个立方体转动,用手点击,且有立方体爆炸,则pass,否则fail。

Projection Multitouch Test

点击进入,一个手指点击屏幕,出现圆点,另外一个手指也点击屏幕,出现第二个圆点,并且圆点随着两根手指的移动而移动,则pass,否则fail。

Projection Offscreen Activity

按Lock键关闭屏幕,五秒钟之后手机会震动,之后按Lock键打亮屏幕,不要提前打亮屏幕,否则case有可能fail掉。显示“Success:xxxxx”,pass键亮显,则pass,否则fail。

Projection Scrolling List Test

能正常滑动屏幕上的50个item,则pass,否则fail。

Projection Video Playback Test

进入之后屏幕有白色矩形在闪,并伴随有嘀嘀声,则pass,否则fail。

Projection Widget Test

点击Up和Down键能亮显button按钮,并且手动点击button按钮,也能亮显,则pass,否则fail。

Keyguard Password Verification

点击“SET PASSWORD”设置一个包含数字与字母的密码,长度要求至少9 位。

点击“CHANGE PASSWORD” 修改密码。

SUID File Scanner

点击OK 会自动进行扫描,若符合测试要求扫描完成后会显示run-as 的绿色提示,即可点击左下角的pass 按钮,通过该项测试。

Accelerometer Measurement Tests

该测试主要测试加速器功能,主要分为六个步骤。

1.水平放置到桌面上,屏幕朝上,点击Next。

2.水平放置到桌面上,点击Next 后,迅速翻转手机使屏幕朝下,5s 左右后翻转手机查看结果(一般会有一声提示音)。

3.手机右侧边缘置于水平面,手机背部靠于垂直处,点击NEXT。查看结果。

4.手机左侧边缘置于水平面,手机背部靠于垂直处,点击NEXT。查看结果。

5.手机顶部边缘置于水平面,手机背部靠于垂直处,点击NEXT。查看结果。

6.手机底部边缘置于水平面,手机背部靠于垂直处,点击NEXT。查看结果。

CTS Sensor Batching Tests

测试步骤如下:

1. 开启飞行模式。

2. 关闭“Adaptive Brightness”。

3. 关闭“Auto-rotate screen”。

4. 关闭“Stay awake”。

5. 关闭“Location”。

6. 把手机置于水平桌面,然后点击“Next”,这时手机屏幕变黑,等待几分钟,等测试完毕,手机会发出嘀的一声,屏幕变亮,测试完成。在手机最底部会显示测试结果(Tests passed: xx, Tests skipped: xx, Tests failed:11),如果Tests skipped: 0, Tests failed:0, 则pass, 否则fail。

CTS Sensor Integration Tests

同上。

CTS Single Integration Test

同上。

Gyroscope Measurement Test

该测试主要测试陀螺仪功能,主要分为六个步骤。

1. 水平放置到桌面上,屏幕朝上,点击Next。

2. 水平放置到桌面上,点击Next 后,迅速翻转手机使屏幕朝下,5s 左右后翻转手机查看结果(一帮会有一声提示音)。

3. 手机右侧边缘置于水平面,手机背部靠于垂直处,点击NEXT,查看结果。

4. 手机左侧边缘置于水平面,手机背部靠于垂直处,点击NEXT,查看结果。

5. 手机顶部边缘置于水平面,手机背部靠于垂直处,点击NEXT,查看结果。

6. 手机底部边缘置于水平面,手机背部靠于垂直处,点击NEXT,查看结果。

Magnetic Field Measurement Tests

该case在8个不同方向测试磁场功能,请测试时尽量远离外界磁场。如果测试失败,建议去户外进行测试。

Sensor Batching Tests

测试步骤如下:

1. 开启飞行模式。

2. 关闭“Adaptive Brightness”。

3. 关闭“Auto-rotate screen”。

4. 关闭“Stay awake”。

5. 关闭“Location”。

6. 点击“Next”开始测试,在屏幕前方一直挥手,直到出现测试结果,再次点击“Next”开始下一条测试,按提示,仍然是在屏幕前方一直挥手……,请仔细查看每次点击Next之后弹出来的操作说明,之后的几条case,应该是,拿着手机走动。

Significant Motion Tests

点击“Next”,几秒钟之后,出现测试结果,如果背景为绿色,则pass,红色则fail,黄色则not support。

Streaming Video Quality Verifier

由于google问题,测试该项时请适当连接VPN。

顺序点击播放视频,若视频能正常流畅播放,则可点击左下角的pass 按钮,

通过该项测试,若六段视频均能通过测试则点击左下角的pass 按钮,通过该测试。

Cts Verifier 测试结果的处理

做完所有case之后点击cts-verifier主界面右上角的保存按钮,可到/sdcard/ctsVerifierReports中查看测试结果,测试结果文件名类似“ctsVerifierReport-2015.03.25-17.09.01-Rockchip-sofia3gr-sofia3gr-LRX22G.zip”。

可以参看android-cts-verifier-4.4_r3测试办法总结:

http://wenku.baidu.com/link?url=MVuUeCknWWjhcxmKC827gVVV7oYgPcJ36eGdf9NJyn4Lb_F-rgXjk0YfydSyEjy1eXPIoWj2e_rQ50u8HPKqnAiK5hoqASeCRJAoC1jH_l3

时间: 2024-11-07 06:43:34

【转】Android兼容性测试CTS Verifier-环境搭建、测试执行、结果分析的相关文章

【转】android 兼容性测试 CTS 测试过程(实践测试验证通过)

原文网址:http://blog.csdn.net/jianguo_liao19840726/article/details/7222814 写这个博客的时候是为了记忆,建议大家还是看官方的说明,官方说的很清楚,不想把官方大段大段的拷贝到这里,官方的的确说的很清楚: http://source.android.com/compatibility/overview.html  左边的相关的几个链接   中文说明:具体的也可以见http://source.android.com/compatibil

【Android进阶】Junit单元测试环境搭建以及简单实用

单元测试的目的 首先,Junit单元测试要实现的功能,就是用来测试写好的方法是否能够正确的执行,一般多用于对业务方法的测试. 单元测试的环境配置 1.在AndroidManifest清单文件的Application节点下,引入单元测试使用的库 2.在AndroidManifest清单文件与Application节点平行的节点中,添加instrumentation节点 下面是一个完整的配置的代码 <manifest xmlns:android="http://schemas.android.

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

标签:Linux 域名 Nginx 原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://xpleaf.blog.51cto.com/9315560/1901284 0.说明 使用Nginx可以配置基于域名的虚拟主机.基于端口的虚拟主机和基于端口的虚拟主机,比较常用的是基于域名的虚拟主机,这里要做的配置是基于域名的虚拟主机,并且是配置多个基于域名的虚拟主机. 关于Nginx配置文件的说明可以参考官方文档,同时也可以参考老男孩老师的书

【Android】cocos2d-x-3.1.1环境搭建与创建工程( Win7 32位系统)

参考资料: http://blog.csdn.net/wxc237786026/article/details/32907079 1.环境搭建 2.创建工程 2.1 VS2012运行 2.2 Android实体机运行 1.环境搭建 安装工具: 1.1.JDK 1.2.Android SDK 1.3.Android NDK 1.4.apache-ant 1.5.Python 1.6   coco2d-x-3.1.1 1.1.JDK安装与配置 参考:http://jingyan.baidu.com/

Hadoop 2.x伪分布式环境搭建测试

Hadoop 2.x伪分布式环境搭建测试 标签(空格分隔): hadoop hadoop,spark,kafka交流群:459898801 1,搭建hadoop所需环境 卸载open JDK rpm -qa |grep java rpm -e –nodeps [java] 1.1,在/opt/目录下创建四个目录: modules/ software/ datas/ tools/ 解压hadoop-2.5.0及jdk-7u67-linux-x64.tar.gz至modules目录下. $tar -

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

phoneGap之环境搭建教程及其example分析 一.环境搭建 与普通的开发android应用一样,phoneGap也同于原生android应用一样,环境相同,只是有部分不同,下面就我做理解,进行说明,不足之处还请大家及时提醒,谢谢!       一.安装 在安装PhoneGap开发环境之前,需要按顺序安装以下工具: 1.Java SDK java sdk,不安装的话不能正常安装Android SDK. 安装成功检测:启动DOS窗口start-->run-->cmd,在DOS窗口中键入:j

phantomjs环境搭建已经执行

1.下载phantomjs http://phantomjs.org/ 2.执行 新建phantomjs.bat,记得改文件夹路径 里面内容为: D:\java\phantomjs\phantomjs.exe D:\java\phantomjs\code\server.js 8080 3.新建server.js文件,放在code文件夹下,注意code文件夹也是新建的,下面是server.js内容 var page = require('webpage').create(); var server

Android兼容性测试CTS Verifier-环境搭建、测试执行、结果分析

    CTS Verifier算是CTS的一部分,需要手动进行,主要用于测试那些自动测试系统无法测试的功能,比如相机.传感器等.由于硬件配置或其他原因,不同手机上部分测试项目被隐藏,也就是说CTS Verifier中case的总数,取决于测试机支持哪些功能,    CTS Verifier总共包含以下15个功能: · Camera · Clock · Device administration · Features · Hardware · Job scheduler · Location ·

安卓测试框架的环境搭建

测试是开发很重要的一部分.有句话说,好的应用不是开发出来的,而是测出来的.虽然作为程序员我们并不需要很精通测试,但是我们还是需要了解一下测试的基本内容. 安卓中提供了一个测试框架给我们使用.我们只需要继承这个框架就可以进行单元测试. 准备工作 新建一个安卓项目,在新建两个类,一个用于做测试框架类,一个用于演示的工具类. 演示工具类没什么,只是为了演示而已. 这里我们重点说一下测试框架类. 环境搭建: 安卓中搭建测试框架类非常简单,只需要新建一个类,然后继承AndroidTestCase类就可以了