CTS添加新测试用例步骤

 一、CTS添加新测试用例

  前言:

  google源代码中的cts测试用例集目录为:source_android4.2/cts/tests/tests/ (source_android4.2表示android4.2代码存放路径),该目录下有一个测试用例集example文件夹;下面就以这个用例集为例,讲述怎样编写自己的cts测试用例集;

  结构如下:

  example

  ├── AndroidManifest.xml

  ├── Android.mk

  └── src

  └── android

  └── example

  ├── cts

  步骤:

  1、    在cts/tests/tests/目录下创建一个自己的用例集(文件夹)名称XXX;

  2、    在该文件夹中构建如下结构:

  XXX

  ├── AndroidManifest.xml(可以拷贝example下该文件)

  ├── Android.mk(可以拷贝example下该文件)

  └── src

  └── android

  └──XXX

  └── cts

  3、    编写测试代码

  前提:

  判断测试的接口或类是属于修改了原生代码中的哪个包下面的类(可以参考google文档:http://developer.android.com/intl/zh-CN/reference/packages.html);

  然后在source_android4.2/cts/tests/tests/目录下找到对应的测试包,参考其代码的编写;

  具体操作:

  在src/android/XXX/cts目录下添加自己的用例;(XXX为自己的测试用例集的名称,例如:yunos)

  细节说明:

  1、google官方cts测试用例中,对一个类进行测试时,并没有对该类的所有方法进行测试,而是测试了该类中使用最频繁的一些方法;所以我们自己编程测试用例时,也可以按照这样的原则进行操作;

  2、对于“窗口控件类”中使用的的res资源文件的目录在source_android4\cts\tests\res

  3、最好是在eclipse中编写,需要res文件的,可以先拷贝到当前工程下,这样可以通过eclipse检查编程中的语法错误;

  4、包名的格式:package android.XXX.cts;

  4、    修改XXX/目录下的Android.mk文件

  LOCAL_PACKAGE_NAME := CtsXXXTestCases(这个变量是定义自己的测试用例集的名称;编译后会生成同名的APK文件)

  LOCAL_INSTRUMENTATION_FOR := CtsTestStubs(这个变量定位的是一些涉及到虚拟机的测试用例,使用junit框架;TestStubs这个类在目录cts\tools\vm-tests-tf\src\dot\junit\opcodes下)

5、修改XXX/目录下的AndroidManifest.xml文件

  <manifest xmlns:android="http://schemas.android.com/apk/res/android"

  package="com.android.cts.XXX">

  <uses-permission android:name="android.permission.DISABLE_KEYGUARD" />

  <application>

  <uses-library android:name="android.test.runner" />

  <activity android:name=”android.XXX.cts.activity的名称”/>(说明:这个是测试activity时容易忽略的地方)

  </application>

  <instrumentation android:name="android.test.InstrumentationCtsTestRunner"

  android:targetPackage="com.android.cts.stub"

  android:label="CTS tests of android.XXX"/>

  </manifest>

  6、修改source_android4.2/cts目录下的CtsTestCaseList.mk;(重要)

  在该文件中给变量cts_test_packages追加自己测试用例集名称CtsXXXTestCases

  说明:该文件在编译的时候会被build/core/tasks/cts.mk调用,生成最终的CTS包。

  对CtsTestCaseList.mk文件说明:

  CTS_COVERAGE_TEST_CASE_LIST(核心变量)

  ├── cts_support_packages(该变量包含的是测试依赖的一些用例,其对于代码目录为cts/hostsidetests)

  ├──CtsAccelerationTestStubs \

  ├──CtsDelegatingAccessibilityService \

  ├──CtsDeviceAdmin \

  ├──CtsMonkeyApp \

  ├──CtsMonkeyApp2 \

  ├──CtsSomeAccessibilityServices \

  ├──CtsTestStubs \

  ├──SignatureTest \

  ├──TestDeviceSetup \

  ├──$(cts_security_apps_list)

  ├── cts_test_packages(该变量对应的是cts/tests/tests/目录下的测试用例)

  二、编译自己的cts包

  执行make  cts  -j4

  三、在真机上进行测试

  由于完整进行cts测试要很长时间,所以我们可以自己创建一个测试计划,步骤如下:

  1、将cts包解压,在android-cts\repository\plans下创建一个名为XXX的xml文件;

  2、这个xml文件格式为:

  <?xml version="1.0" encoding="UTF-8"?>

  <TestPlan version="1.0">

  <Entry uri="android.XXX"/>

  </TestPlan>

  3、进行cts测试时执行run  cts  -- plan  XXX

最新内容请见作者的GitHub页:http://qaseven.github.io/

时间: 2024-10-03 16:30:54

CTS添加新测试用例步骤的相关文章

编译-NCTUns添加模块问题或自己编写新模块步骤

问题描述 NCTUns添加模块问题或自己编写新模块步骤 最近在用NCTUns做路由协议仿真,请问有没有大侠在NCTUns上添加新的路由协议模块成功的,比如GPSR或是自己写的协议模块编译通过的?摆脱各位了 解决方案 http://www.pudn.com/downloads628/sourcecode/unix_linux/network/detail2553472.html 解决方案二: 你回答的很迅速,谢谢,这个文档我之前下载过

看实例学VFP:编程方式向表单添加新控件

vfp的"表单控件工具栏"包含了标签(Label).文本框(TextBox)等常用的控件类,以前我们向表单添加控件时多数都是在设计时使用该工具栏. 单击该工具栏上的某个控件图标后,即可在表单上拖动.绘制出所需要的控件.但有时我们需要的控件有可能在设计时无法确定,而是在应用程序运行时根据具体情况动态创建的,这时就需要以编程的方式,通过使用addobject()函数或creatobject()函数动态地向表单添加新控件. 本例在命令按钮的click事件代码中,使用系统基类grid动态创建出

win8系统添加新用户的设置方法

win8系统添加新用户的设置方法          方法一: 1.鼠标滑到电脑屏幕的右侧,会显示"搜索"."共享"."开始"."设备"."设置"的导航条,单击"设置"; 2.这时候在屏幕的右侧会显示出设置界面,单击"更改电脑设置"; 3.现在来到"电脑设置"界面,单击左侧的"用户",然后在右侧单击"其他用户"

word2013如何添加新样式

  添加新样式的步骤如下: 步骤一:首先在word中以最初默认的样式编辑文档,无需缩进或者字体大小更改. 步骤二:在开始栏中,有个小标,打开小标便可以看到如下图2, 步骤三:选择创建新样式 步骤四:然后点击修改,根据我们的需要进行更改,比如字体,字号,以及段落.段落的修改可以参考下面图2 步骤五:我们在段落中设置首行缩进2个字符,行间距为1.5倍 步骤六:保存之后就可以在样式库中发现刚才我们设置的样式,然后将鼠标放于你想要运用样式的段落,然后点击需要的样式,整段的样式就运用完毕了

教你用photoshop删除复杂背景上的文字并添加新文字方法

  用photoshop删除复杂背景上的文字并添加新文字 我将用到仿制图章工具 修补工具 修复画笔工具 模糊工具 使用时注意分别仿制图章工具的不融合性 修补工具适用于大范围修补 修复画笔工具在对齐下可以灵活修复等 方法/步骤 用photoshop打开需要删除部分文字的图片 箭头指向的部分是不需要的部分 拖动背景图层到创建新图层按钮 新建一个背景图层副本 点按工具箱的修复画笔工具 然后按住alt键 在一个蔬菜区域取样 然后在文字上涂抹 如果不需要将取样区域融合到周围环境可以点按仿制图章工具 然后取

怎么样给Win 7桌面小工具图片拼图板添加新图片

Win 7桌面小工具图片拼图板默认的话只有11张图片,我一个朋友非常喜欢玩这个游戏,几个星期就玩通关了,然后没图片可以玩了,感觉好没意思.然后就问我可以不可以自己找些图片添加进去,然后我把加图片的方法告诉他了,随便在这边分享下. 1 给予文件夹Administrator账户权限. Program FilesWindows SidebarGadgetsPicturePuzzleGadgetZh-cnjs文件夹,右击Settings文件打开属性对话框,切换到安全项卡,单击高级按钮进入Settings

Linux环境中MySQL主从同步--添加新的从库

原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://dgd2010.blog.51cto.com/1539422/1689171 当前我认为数据库主从有两大应用价值: 1.从库相当于主库的备份.虽然数据库的主从并不能代替/取代备份,例如错误的数据可能毁掉所有的数据库,但主从也是在一种可读的状态下保持备份的一种实现方式. 2.从库可以缓解主库的压力,能提高性能.由于从库是只读的,因此在读取查询方面,从库可以代替主库,承担一定的压力,

Ecshop二次开发之后台添加新栏目

中介交易 http://www.aliyun.com/zixun/aggregation/6858.html">SEO诊断 淘宝客 云主机 技术大厅 最近几天看ecshop的源码,学到不少东西.这篇日记记录下后台添加新栏目(菜单项)的步骤,以备后用. step1 添加菜单项 打开 /admin/includes/inc_menu.php文件(后台框架左边菜单),在最后添加一行如下: 1$modules['17_other_menu']['sns_list'] = 'sns_list.php

Linux 使用fdisk添加新分区

Linux系统由于数据累计增长.前期存储规划不合理等诸多因素,出现存储不够用的情况时,此时就需要扩展逻辑分区或添加新的逻辑分区.下面介绍一下通过使用fdsik添加新的逻辑分区.   首先使用df命令检查文件系统的磁盘空间占用情况 [root@DB-ONE-SERVER~]# df -h Filesystem Size Used Avail Use% Mounted on /dev/mapper/VolGroup00-sda3 30G 2.4G 26G 9% / /dev/sda1 99M 23M