一、前言
兼容性测试套件 (CTS) 是一个免费的商业级测试套件,需要测试的话首先得下载测试包,我现在使用的是安卓4.4版本的源码,所以下载测试包的时候也要下载对应版本的测试包,下载地址:https://source.android.com/compatibility/cts/downloads
Android 4.4
Android 4.4 是代号为 KitKat 的开发里程碑版本。Android 4.4 的源代码位于开放源代码树中的“android-cts-4.4_r4”分支中。
Android 4.4 R4 兼容性测试套件 (CTS) - ARM
Android 4.4 R4 兼容性测试套件 (CTS) - x86
Android 4.4 R4 CTS 验证程序 - ARM
Android 4.4 R4 CTS 验证程序 - x86
我用的是arm处理器,所以要下载arm的版本,测试套件分两部分,一部分是自动化测试,“Android 4.4 R4 兼容性测试套件 (CTS) - ARM” 是运行在PC端linux版的自动化测试套件,另一部分是人工测试,“Android 4.4 R4 CTS 验证程序 - ARM”是运行在安卓系统下面的测试程序,需要人工去一项项核对测试项。
二、自动化测试的测试套件使用方法
(1)前期准备
需要下载安卓源码和linux内核,把linux内核和安卓源码都要编译一遍,然后最后还要编译cts的组件,编译方法如下:
. build/envsetup.sh
lunch smdk4x12-eng
make cts
(2)解压并配置好cts组件的位置
unzip android-cts-4.4_r4-linux_x86-arm.zip修改 “android-cts/tools/cts-tradefed" 文件的配置信息 ,添加安卓源码的目录
ANDROID_BUILD_TOP="/home/topeet/Android/iTop4412_KK4.4_usbwifi"
三,运行cts测试
./android-cts/tools/cts-tradefed然后再cts终端下输入针对cts兼容性的测试计划
run cts --plan CTS
测试计划是有很多种的
您可以选择以下测试计划:
CTS - 兼容性所需的所有测试。
Signature - 所有公开 API 的签名验证
Android - 针对 Android API 的测试
Java - 针对 Java 核心库的测试
VM - 针对 ART 或 Dalvik 的测试
Performance - 针对实施的性能测试
四、cts命令说明
Host
help
showthis message
帮助文档
exit
exitcts command line
退出CTS
Plan
ls --plan
listavailable plans
列出所有Plan
ls --plan 【plan_name】
listcontents of the plan with specified name
列出一个Plan的内容
参数:plan_name,Plan的名称
add --plan 【plan_name】
adda new plan with specified name
添加一个Plan
参数:plan_name,Plan的名称
add --derivedplan 【plan_name】-s/--session【session_id】-r/--result【result_type】
derivea plan from the given session
创建一个新的的Plan,这个plan通过指定一个Test_Plan的结果序号和该结果中特定的结果类型。即取得指定结果中,某一类型的所有testcase来组成一个新的Plan
参数:plan_name,创建的新Plan名称
session_id,已有结果的一个ID
result_type,结果中,每个testcase
的结果类型取以下4
值之一:
pass/fail/notExecuted/timeout
注: 如果result_type为空,则默认为pass
如果session_id为空,则默认选取
最近的一次测试结果
rm --plan 【plan_name】/all
removea plan or all plans from repository
删除一个Plan
参数:plan_name,Plan的名称
参数为all时,删除所有的Plan
start --plan 【test_plan_name】
runa test plan
运行一个Plan
参数:test_plan_name,Plan的名称
start --plan 【test_plan_name】-d/--device【device_ID】
runa test plan using the specified device
在指定的设备上运行一个Plan
参数:test_plan_name,Plan的名称
device_ID,设备ID
start --plan 【test_plan_name】-t/--test【test_name】
runa specific test
运行某个Plan中的一个Test
参数:test_plan_name,Plan的名称
test_name,Test名称
start --plan 【test_plan_name】-p/--package【java_package_name】
runa specific java package
运行某个Plan中的一个java包,该包由若干个Testcase组成
参数:test_plan_name,Plan的名称
java_package_name包的名称
start --plan 【test_plan_name】-t/--test【test_name】-d/--device【device_ID】
runa specific test using the specified device
在指定的设备上运行某个Plan中的一个Test
参数:test_plan_name,Plan的名称
test_name,Test名称
device_ID,设备ID
start --plan【test_plan_name】-p/--package【java_package_name】-d/--device【device_ID】
runa specific java package using the specified device
在指定的设备上某个Plan中的一个java包,该包由若干个Testcase组成
参数:test_plan_name,Plan的名称
test_name,Test名称
device_ID,设备ID
Package
ls -p/--package
listavailable packages
列出所有的package
ls -p/--package 【package_name】
listcontents of the package with specified name
列出一个package的内容
参数:package_name,包的名字
add -p/--package root
addpackages from root to repository
将包从 root目录移到repository目录
rm -p/--package【package_name】/all
removea package or all packages from repository
删除一个package
参数:package_name,包的名字
当参数为all时,删除所有的package
Result
ls -r/--result
listall result of sessions
列出所有的结果
ls -r/--result -s/--session【session_id】
listdetail case result of a specified session
列出指定的结果
参数:session_id,结果的ID,通过ls–r
可以参阅结果的详细信息,包括ID
ls -r/--result【pass/fail/notExecuted/timeout]】-s/--session【session_id】
listdetail cases of a specified session by the specified result
列出一个结果所使用的全部Testcases,根据结果的详细信息。
参数:pass通过的test个数
fail未通过的test个数
notExecuted未执行的test个数
timeout超时的test个数
session_id结果的ID,通过ls–r
可以参阅结果的详细信息,包括ID
History
history/h
listall commands in command history
列出所有执行过的命令
history/h 【count】
listthe latest count records in command history
列出history中可选择的子命令
history/h -e 【num】
runthe command designated by 'num' in command history
通过指定执行过命令的集合中的序号执行一个命令。
参数:num,执行过的命令集合中的编号
Device
ls -d/--device
listavailable devices
列出所有连接的设备,并显示设备的详细信息:设备ID,设备name,设备status
参考资料:
本文介绍如何使用Android 4.4版本的兼容性测试套件(CTS)进行自动化及人工测试,包括CTS测试包的下载、安装、配置及运行等步骤,并详细解释了CTS命令的具体含义。
1369

被折叠的 条评论
为什么被折叠?



