一、CTS 介绍与命令说明
  主要介绍:
CTS下载与配置
CTS目录说明
CTS基本命令说明
Windows系统下运行CTSCTS 全称Compatibility Test Suite 兼容性测试套件。每个Android手机必须要通过最新的 CTS 检测,以保证标准的 Android Application 能运行在该平台下。通过了 CTS 验证,需要将测试报告提交给 Google,以便取得 Android Market的认证。
 
1、CTS下载与配置
下载CTS:
下载官网:http://source.android.com/compatibility/downloads.html
下载文件:(Android 4.4为例)
Android 4.4 R3 Compatibility Test Suite (CTS) - ARM
配置CTS:
解压Compatibility Test Suite链接对应的压缩包
将解压出来的android-cts文件夹,复制到SDK根目录下
 
2、CTS介绍与指令说明— CTS目录说明
  android-cts文件夹下有四个文件夹
android-cts docs  
repository logs:保存log文件夹
plans:运行计划文件夹
results:保存测试结果文件夹
testcases:用例配置文件夹
resource  
tools 运行工具,一些支持运行的jar包和脚本
 
3、CTS介绍与指令说明— CTS基本命令说明
分类 命令 说明
Host help 基本命令帮助说明
help all 全部命令帮助说明
exit 退出控制台
Run run cts --plan test_plan_name 运行指定计划
run cts --package/-p 运行指定包
run cts --class/-c [--method/-m] 运行指定方法
run cts --continue-session session_ID 继续运行指定回话ID
run cts [options] --serial/-s device_ID 运行指定设备
run cts [options] --shardsnumber_of_shards 运行多个设备
run cts --help/--help-all 运行帮助
List l/list d/devices 列出连接的设备
l/list packages 列出所有测试包
l/list p/plans 列出所有测试计划
l/list r/results 列出已经保存的结果
 
4、CTS介绍与指令说明— Windows系统下运行CTS 
我们验证一下以上这些命令,进入控制台,之前都是cmd进入控制台,现在我们自己编写一个脚本直接打开cts命令输入控制台。
编写run-cts.bat,将该脚本放在android-cts>tools文件夹下
run-cts.bat脚本内容:
ECHO OFF
ECHO CTS(Compatibility Test Suite)...
cd C:\Android SDK\android-cts\tools
java -cp ddmlib-prebuilt.jar;tradefed-prebuilt.jar;hosttestlib.jar;cts-tradefed.jar
-DCTS_ROOT="C:\\Android SDK"
com.android.cts.tradefed.command.CtsConsole
pause

-cp 后面的内容写的是tools文件夹下的所有jar包

-DCTS_ROOT 后面的内容是Android SDK的路径

ps:这个脚本运行成功的前提是Android开发环境已经配置好环境变量。

点击run-cts.bat,脚本运行结果:

然后就可以输入以上的CTS命令,查看CTS帮助。

二、UiAutomator在CTS上运行 

1、运行步骤:
依据用例套件编写用例配置XML文件
将用例配置文件与用例JAR包放到testcase目录下
依据配置文件编写测试计划XML文件
将测试计划文件放置与plan目录下
编写运行脚本bat文件
运转bat文件
 
2、将以上步骤用程序自动实现-CtsHelper.java
我们已经有了一个CtsHelper.java帮助我们实现UiAutomator在CTS上运行的自动化。
在GitHub上有CtsHelper的实例运用,大家可以下载下来验证一下。
下载地址:https://github.com/
搜索:uiautomator
点击进入>点击clone Or Download 按钮>如图示,点击 Copy to Clipboard

然后进入eclipse,点击如图箭头所示位置,选择Git打开,在打开Git页面箭头所示第二个图标,打开输入框,将copy到的地址黏贴到URI栏,然后在点击next,到最后点finish,然后会出现复制进度条,等待完成就好。
      

 
完成之后,会出现UiAutomatorHelper文件夹,右键>import project>next>finish

 
然后回答java模式,打开Demo1.java文件,配置一下运行信息
workspace:就是你UiAutomatorDebug这个项目所在的文件夹路径
setDevices:就是你连接的设备号,可以cmd控制台,命令adb devices 查看设备号

然后 Demo1>右键>run as >java Application
运行结果如下,在Console控制台可以看到输出的报告

 
一次用例执行完成,可以看到控制台输出 Created xml report:
file at file://C:\Android SDK\android-cts\repository\results\2017.01.21_21.47.48\testResult.xml

将这个路径地址黏贴到浏览器就可以看到html样式的报告,如下。
同样可以到这个路径的指定文件夹下面看到这个xml文件。
ps:用IE浏览器,或者火狐浏览器打开。

总结:
这样,你自己就可以编写测试用例运行,并跑出这样的测试报告。
别忘了导入辅助的CtsHelper.java很UiAutomatorHelper.java
编写的用例要以test开头,这样CtsHelper才会识别出来
 
这也是我学习记录的内容,以下放出我学习的原链接,详细内容,大家可以看这里:
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

uiautomator-CTS上运行,出xml报告的更多相关文章

  1. 记一次asp.net core 在iis上运行抛出502.5错误

    asp.net core 在iis上运行抛出502.5异常的部分原因以及解决方案 环境说明 已安装 .net core runtime 2.1.401 已安装 .net core windows ho ...

  2. [Selenium]Grid模式下运行时打印出当前Case在哪台node机器上运行

    当Case在本地运行成功,在Grid模式下运行失败时,我们需要在Grid模式下进行调试,同时登录远程的node去查看运行的情况. Hub是随机将case分配到某台node上运行的,怎样知道当前的cas ...

  3. Android UiAutomator - CTS Frame

    使用UiAutomator进行UI自动化测试后,生成的测试结果并不是很美观.为了生成一份好看的测试结果(报告),本文将使用CTS框架,当然也可以自己编写一份测试报告框架(如:生成html,excel报 ...

  4. 老李分享:导出xml报告到手机

    老李分享:导出xml报告到手机   poptest是国内唯一一家培养测试开发工程师的培训机构,以学员能胜任自动化测试,性能测试,测试工具开发等工作为目标.如果对课程感兴趣,请大家咨询qq:908821 ...

  5. MapReduce编程入门实例之WordCount:分别在Eclipse和Hadoop集群上运行

    上一篇博文如何在Eclipse下搭建Hadoop开发环境,今天给大家介绍一下如何分别分别在Eclipse和Hadoop集群上运行我们的MapReduce程序! 1. 在Eclipse环境下运行MapR ...

  6. linux下在eclipse上运行hadoop自带例子wordcount

    启动eclipse:打开windows->open perspective->other->map/reduce 可以看到map/reduce开发视图.设置Hadoop locati ...

  7. 在Linux上运行C#

    众所周知,C#是Microsoft推出的.NET语言,只能在.NET平台上运行,例如Win 9x.ME.NT.2000.XP和Win CE之类的操作系统.但是,现在却有了一个叫做Mono的项目,它的目 ...

  8. 如何在yarn上运行Hello World(二)

      在之前的一篇文章我们介绍了如何编写在yarn集群提交运行应用的AM的yarnClient端,现在我们来继续介绍如何编写在yarn集群控制应用app运行的核心模块 ApplicationMaster ...

  9. 全网最详细的Eclipse里如何正确新建普通的Java web项目并发布到Tomcat上运行成功【博主强烈推荐】(图文详解)

    不多说,直接上干货! 首先,大家要明确,IDEA.Eclipse和MyEclipse等编辑器之间的新建和运行手法是不一样的. 如果是在Myeclipse里,则是File -> new -> ...

随机推荐

  1. 在Nginx 配置防止单IP 攻击频次的控制 和 大流量攻击

    nginx可以通过HttpLimitReqModul和HttpLimitZoneModule配置来限制ip在同一时间段的访问次数. HttpLimitReqModul用来限制连单位时间内连接数的模块, ...

  2. MySQL数据库安装文件夹与配置文件简易说明

    1.MySQL安装文件夹 bin:存放着可执行文件 include:存放头文件 lib:存放库文件 share:存放字符集.语言等信息 2.配置文件 my.ini:MySQL软件正在使用的配置文件 m ...

  3. Java中匿名内部类

    匿名内部类也就是没有名字的内部类 正因为没有名字,所以匿名内部类只能使用一次,它通常用来简化代码编写 但使用匿名内部类还有个前提条件:必须继承一个父类或实现一个接口 实例1:不使用匿名内部类来实现抽象 ...

  4. cxGrid 根据列值变色(样式)

    在使用cxGrid的过程中,某一个单元格经常需要根据其他单元格的值来做相应的变色,如: 在cxGridDBTableView中,选定要变样式(如背景色.字体属性等)的列, 打开事件Events -&g ...

  5. JDK源码分析之concurrent包(二) -- 线程池ThreadPoolExecutor

    上一篇我们简单描述了Executor框架的结构,本篇正式开始并发包中部分源码的解读. 我们知道,目前主流的商用虚拟机在线程的实现上可能会有所差别.但不管如何实现,在开启和关闭线程时一定会耗费很多CPU ...

  6. Kubernetes资源创建yml语法

    前言 在是用kubernetes中,我们对资源的创建大部分都是通过 1 kubelet create -f RESOURCE.yaml 刚开看的时候不免有一些迷茫,看不懂语法,不知道怎么写:今天本文就 ...

  7. docker,构建nginx反向代理tomcat

    Nginx实现负载均衡是通过配置nginx.conf来实现的,nginx.conf的全部内容如下: user nginx; worker_processes 1; error_log /var/log ...

  8. Python3+Selenium3自动化测试-(四)

    selenium鼠标事件 # coding=utf-8 import time from selenium import webdriver from selenium.webdriver.commo ...

  9. node.js---sails项目开发(2)

    1.安装mongoDB,这里用brew安装 brew install mongodb 2. 启动数据库 mongod 3.再打开一个终端,连接数据库 mongo 4.启动成功后,接下来就是新建一个数据 ...

  10. 简单的 H5 视频推流解决方案

    导语 随着直播平台爆发式增长,直播平台从 PC 端转战移动端,紧跟着直播的潮流,自己学习实现了一套简单的 H5 视频推流的解决方案,下面就给小伙伴们分享一下自己学习过程中的经验. 环境部署 1. 配置 ...