UIautiomator官网地址:http://android.toolib.net/sdk/index.html

1.环境搭建

使用uiautomator需要导入jar包,uiautomator.jar和android.jar,位置在sdk/platforms/android*使用时需要注意自己的SDK版本需要大于16, SDK Tools版本需要大于21.如我下面跟新后SDK后出现了很多工具,以下是你需要使用到的工具

创建一个Java project项目

1.

2添加java Build path,创建一个library的个(不创建也可以)导入需要用到uiatuomator.jar和Android.jar,我使用的是Android19

因为博主使用的是junit做断言,所以也导入junit的包

导入了所有需要的包了,现在开始编码了

2.编码

完成后,编码中编码,根据自己需要的场景编码,如博主中中部分编码的截图:

uiatuomator使用还是挺简单,原理我还没有去深研究,因为今天主要写使用过程,就不追溯他的实现了,在使用uiatuomator时你必须明白几个类

UiAutomatorTestCase
UiDevice
UiSelector
UiScrollable
UiObject
UiWatcher

3.运行

编译和运行

1.创建build文件

  在\Android-sdk\tools\目录下,运行命令android create uitest-project -n <name> -t <android-sdk-ID> -p <path>

  eg:

    android create uitest-project -n AutoRunner -t 6 -p e:\workspace\AutoRunner

E:\Soft\JAVA\adt-bundle-windows-x86_64-20131030\sdk\platforms\android-19

    上面的name就是将来生成的jar包的名字,可以自己定义,android-sdk-ID就是上面看到的6;path是Eclipse新

    建的工程的路径;运行命令后,将会在工程的根目录下生成build.xml文件。

需要知道自己的sdk版本号,注意:可能提示版本太低,实际上已满足要求,解决方案:1.升级SDK 2.在sdk的bin目录下用Android list target命令 查询这个版本号

2.编译生成jar

    CMD进入项目的工程目录,然后运行ant build,将使用ant编译生成jar,成功将会提示:

    BUILD SUCCESSFUL

    Total time:1 second

还有直接使用eclipse直接生成,选择build右键------>run as---->ant build

直接更改build.xml文件,更改为“default="build"”,在进行一次build

3.push并运行jar

    将jar包push 到模拟器或者真实安卓设备

    adb push <jar文件路径> data/local/tmp

    eg:

    adb push e:\workspace\AutoRunner\bin\AutoRunner.jar data/local/tmp

    adb -s emulator-5554 push e:\workspace\AutoRunner\bin\AutoRunner.jar data/local/tmp

    运行jar包

    adb shell uiautomator runtest <jar文件名> -c <工程中的类名,包含包名>

    eg:

    adb shell uiautomator runtest AutoRunner.jar -c com.Runner

    adb -s emulator-5554 shell uiautomator runtest AutoRunner.jar -c com.Runner(虚拟机)

uiautomator做自动化的过程的更多相关文章

  1. 使用uiautomator做UI测试

    转载~~~~~~~~~~~~~~~~~~~~~~~~ 若有侵权,请及时联系本博主,博主将第一时间撤销 在Android 4.1发布的时候包含了一种新的测试工具–uiautomator,uiautoma ...

  2. [转载]使用uiautomator做UI测试

    这个只是单纯的mark一下.还没有认真去研究.鉴于最近也不会做手机的自动化测试,所以留作以后参考吧. 转自: http://blog.chengyunfeng.com/?p=504 在Android ...

  3. [zhuan]使用uiautomator做UI测试

    http://blog.chengyunfeng.com/?p=504 在Android 4.1发布的时候包含了一种新的测试工具–uiautomator,uiautomator是用来做UI测试的.也就 ...

  4. 关于RF做自动化大致流程的梳理

    RF只是一个框架,类似于单元测试框架,可以实现对用例的有效管理.结合其它第三方库,可以进行,接口,数据库,APP的自动化测试.结合JENKINS,还可以进行有效的持续集成. 本文不讲调用第三方库的哪些 ...

  5. 聊聊用Selenium做自动化碰到了哪些坑?都是怎么解决的?

    本周我们的讨论话题是关于Selenium自动化: 话题:聊聊用Selenium做自动化碰到了哪些坑?都是怎么解决的? 话题描述:Selenium是大家做UI自动化用到的主流框架,在平时写脚本的过程中, ...

  6. AppVeyor-CI为GitHub项目做自动化集成(dotnet为主)

    travis-ci对dotnet的项目做自动化集成不太友好,尤其是使用mono的编译和不能使用MSTest进行自动化测试,所以转到appveyor进行. appveyor的配置非常简单,有两种方式: ...

  7. 菜鸟如何使用hanlp做分词的过程记录

    菜鸟如何使用hanlp做分词的过程记录 最近在学习hanlp的内容,准备在节后看看有没有时间整理一波hanlp分享下,应该还是会像之前分享DKHadoop一样的方式吧.把整个学习的过程中截图在配文字的 ...

  8. 【Golang 接口自动化00】为什么要用Golang做自动化?

    为什么使用Golang做自动化 顺应公司的趋势学习了Golang之后,因为没有开发那么多的时间和项目来实践,怕步此前学习Java缺少练习遗忘殆尽的后尘,决定利用工作之余的时间把此前用Python的写的 ...

  9. 如何用Python做自动化特征工程

    机器学习的模型训练越来越自动化,但特征工程还是一个漫长的手动过程,依赖于专业的领域知识,直觉和数据处理.而特征选取恰恰是机器学习重要的先期步骤,虽然不如模型训练那样能产生直接可用的结果.本文作者将使用 ...

随机推荐

  1. 设置按钮背景图片(HTML-CSS)

    很多人提交表单时都喜欢用一个图片来作为提交按钮,大多数人可能用JS去操作表单的提交,即当用户点击这个图片时响应一个JS来提交表单.其实还有一种方法,就是直接设置SUBMIT按钮的图片背景.设置它的图片 ...

  2. python包管理工具

    pip 是一个安装和管理 Python 包的工具 , 是 easy_install 的一个替换品.本文将详细说明 安装 pip 的方法和 使用 pip 的一些基本操作如安装.更新和卸载 python ...

  3. SRM 596 DIV 2

    前段时间终于配置好了TopCoder的环境,所以就拿这场的DIV2练习了一下 1. 250pt FoxAndSightseeing 题意 给你n个城市的位置,他们在同一直线上,要求你跳过其中某一个城市 ...

  4. Hadoop项目开发环境搭建(Eclipse\MyEclipse + Maven)

    写在前面的话 可详细参考,一定得去看 HBase 开发环境搭建(Eclipse\MyEclipse + Maven) Zookeeper项目开发环境搭建(Eclipse\MyEclipse + Mav ...

  5. Java & XML Tool Overview

    As mentioned in the introduction Sun now provides these tools for XML Processing in Java: StAX Reade ...

  6. hdoj 2817 A sequence of numbers【快速幂】

    A sequence of numbers Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Ot ...

  7. vs2015中升级Nuget后,找不到Umbraco安装包问题

    打开VS2015, Tools=>Extensions and Updates=> Updates => Visual Studio Gallery   在这里check一下是否有N ...

  8. 4G通信技术LTE介绍

    参考文档在这里 LTE技术 LTE是继GSM/EDGE和UMTS/HSxPA之后的由3GPP推出的移动网络技术最新标准,属于4G. 未来网络需要更高的数据速率,和包路由优化系统.更好的QoA和更廉价的 ...

  9. Outlook账户迁移帮助

    Outlook账户迁移指南 1. 介绍 开贴聊聊如何迁移Outlook用户账户到另外一台电脑. 相信许多Outlook用户都遇到过这样的情况:买来一台新电脑,安装完Outlook后,想把旧电脑里面的O ...

  10. iOS开发Block的使用

    Block 是从 iOS4引入的,在日常开发中,会经常用到Block.特别是在多线程中,Block的用处更广泛.而且,Block不仅可以接收参数,其本身也可以作为参数,因此,Block的功能非常强大. ...