UiAutomator学习笔记(2)- 编译与运行代码

新建测试工程

  1. 打开Eclipse 
  2. 新建一个java工程,新建包 (注意是新建java工程)
  3. 增加build path
    • 项目中新建libs目录
    • SDK目录下platforms\android-19中,找到android.jar和uiautomator.jar,拷贝到libs目录中
    • 选中libs目录中这两个jar文件,右键->add to build path   
  4. 新建测试类,继承UiAutomatorTestCase 
  5. 编写用例,方法名必须test开头,遵循junit3标准
  6. public void testDemo() {
        UiDevice.getInstance().pressHome();
    }
  7. 编译与运行 

编译与运行测试代码

  1. 创建build文件:android create uitest-project -n <jar name> -t 1 -p <workspacepath>

    • -n:跟上需要发布的jar包的名字
    • -t:编译使用的SDK版本在pc上的id编号,使用android list查看  
    • -p:测试工程的工作空间路径
  2. 修改build文件:进入工作空间,打开build.xml文件,将第二行的help修改为build
    •   
  3. 开始编译:ant,使用命令行打开项目根目录,直接执行ant即可 
    • 注意输出结果中jar包位置信息
    •  
  4. push文件到手机:adb push <jar_file_path> data/local/tmp/   
  5. 运行测试:adb shell uiautomator runtest <jar name> -c <包名>.<类名>[#test name] 
    • <JARS> :指定运行的  jar包文件名,位于路径/data/local/tmp/下
    • -c  <CLASSES> :

      • 测试一个类下的所有用例,package_name.class_name
      • 测试特定的某个方法:package_name.class_name#method_name
      • 可指定多个  –c 
      • 如果不指定,则运行整个jar包下的所有用例
    • --nohup:指定此参数,可断开PC进行运行测试用例
    • -e <NAME> <VALUE>:传入一个键值对到测试程序中,可用于一些需要变化的参数的传入
时间: 2024-10-17 21:31:07

UiAutomator学习笔记(2)- 编译与运行代码的相关文章

DuiLib学习笔记1——编译运行demo

c++中皮肤问题比较麻烦,MFC自带的太难用.DirectUI界面库就比较强大了,之前像skin++之类的基于DirectUI收费昂贵.DuiLib是基于DirectUI的界面库,可以将用户界面和处理逻辑彻底分离,极大地提高用户界面的开发效率. duilib的SVN地址:http://duilib.googlecode.com/svn/trunk 下载后运行DuiLib.sln 编译时可能会遇到几个报错. 0.开发环境本身有问题,比如用win7没有装win7sdk之类的. 1. TestApp1

(转)redis 学习笔记(1)-编译、启动、停止

redis 学习笔记(1)-编译.启动.停止 一.下载.编译 redis是以源码方式发行的,先下载源码,然后在linux下编译 1.1 http://www.redis.io/download 先到这里下载Stable稳定版,目前最新版本是2.8.17 1.2 上传到linux,然后运行以下命令解压 tar xzf redis-2.8.17.tar.gz 1.3 编译 cd redis-2.8.17make 注:make命令需要linux上安装gcc,若机器上未安装gcc,redhat环境下,如

gcc 学习笔记(一) - 编译C程序 及 编译过程

一. C程序编译过程 编译过程简介 : C语言的源文件 编译成 可执行文件需要四个步骤, 预处理 (Preprocessing) 扩展宏, 编译 (compilation) 得到汇编语言, 汇编 (assembly) 得到机器码, 连接 (linking) 得到可执行文件; -- 查看每个步骤的编译细节 : "-E" 对应 预处理, "-S" 对应 编译, "-c" 对应 汇编, "-O" 对应 连接; -- 每个步骤对应的工

Redis学习笔记(简单了解与运行)

Redis学习笔记(简单了解与运行) 开源的非关系型数据库 是REmote Dictionary Server(远程字典服务器)的缩写,以字典结构存储数据 允许其他应用通过TCP协议读写字典中的内容. Redis支持存储的键值数据类型 字符串类型 散列类型 列表类型 集合类型 有序集合类型 Redis的特性 通过一个列子看出Mysql和Redis的存储区别 例如: (存储一篇文章,文章包括:标题(title),正文(content),阅读量(views),标签(tags)) 需求: 把数据存储在

Django学习笔记 官网教程纠正 代码

原文: Django学习笔记 官网教程纠正 代码 Django学习笔记 4.模板初学中,照书例django book 出现以下异常 raise ImportError("Settings cannot be imported, because environment variable %s is undefined." % ENVIRONMENT_VARIABLE) ImportError: Settings cannot be imported, because environmen

【学习笔记】编译原理-有限自己主动机

一.定义: 不确定的有限自己主动机(NFA): 一种数学模型 (1) 一个有限的状态集合S (2) 一个输入符号集合∑(不包括ε) (3) 一个转换函数move: S X (∑ U {ε}) -> P(S) (4) 状态s0是唯一的開始状态 (5) 状态集合F是接受状态集合,S包括F 确定的有限自己主动机(DFA): 是NFA的特殊情况 (1) 不论什么状态都没有ε转换 (2) 对于不论什么状态s和不论什么输入符号a,最多仅仅有一条标记为a的边离开,即转换函数move: S X ∑-> S能够

【学习笔记】编译原理-有限自动机

一.定义: 不确定的有限自动机(NFA): 一种数学模型 (1) 一个有限的状态集合S (2) 一个输入符号集合∑(不包含ε) (3) 一个转换函数move: S X (∑ U {ε}) -> P(S) (4) 状态s0是唯一的开始状态 (5) 状态集合F是接受状态集合,S包含F 确定的有限自动机(DFA): 是NFA的特殊情况 (1) 任何状态都没有ε转换 (2) 对于任何状态s和任何输入符号a,最多只有一条标记为a的边离开,即转换函数move: S X ∑-> S可以是一个部分函数. 二.

【UiAutomator学习笔记】1. 环境配置与编译运行

概述 uiautomator遵守Junit3标准 配置编写环境 配置Java开发环境 JAVA_HOME:JDK根目录 path:添加%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin; CLASSPATH:.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar; Andrid环境配置 ANDROID_HOME:sdk根目录 path:将android sdk中tools目录(通过android list命令验证添加成功)和pla

Android(java)学习笔记160:Framework运行环境之启动Zygote

前面Android(java)学习笔记159提到Dalvik虚拟机启动初始化过程,就下来就是启动zygote进程: zygote进程是所有APK应用进程的父进程:每当执行一个Android应用程序,Zygote就会孵化一个子线程去执行该应用程序(系统内部执行dvz指令完成的)  Å特别注意:系统提供了一个app_process进程,它会自动启动ZygoteInit.java和SystemServer.java这两个类,app_process进程本质上是使用dalvikvm启动ZygoteInit