zoukankan      html  css  js  c++  java
  • uiautomator做自动化的过程

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

    1.环境搭建

    使用uiautomator需要导入jar包,uiautomator.jarandroid.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 ools目录下,运行命令android create uitest-project -n <name> -t <android-sdk-ID> -p <path>

      eg:

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

            E:SoftJAVAadt-bundle-windows-x86_64-20131030sdkplatformsandroid-19

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

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

     需要知道自己的sdk版本号,注意:可能提示版本太低,实际上已满足要求,解决方案:1.升级SDK 2.sdkbin目录下用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

        将jarpush 到模拟器或者真实安卓设备

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

        eg:

        adb push e:workspaceAutoRunnerinAutoRunner.jar data/local/tmp

        adb -s emulator-5554 push e:workspaceAutoRunnerinAutoRunner.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(虚拟机)

     

  • 相关阅读:
    创建或者连接管道+++检查管道空间是否够写入本消息++++删除管道
    从instr中截取第一个delimiter之前的内容放到outstr中,返回第一个delimiter之后的位置
    把数字按网络顺序或主机顺序存放到字符串中++++把字符串按网络顺序转换成数字++++把字符串按主机顺序转换成数字
    压缩空格的函数以及BCD码与ASCII相互转换函数
    判断文件是否存在
    把指定长度字符串转换成数字
    找到特定串在源字符串中的位置
    FTP命令详解
    docker 学习路线
    云原生技术的了解
  • 原文地址:https://www.cnblogs.com/chongyou/p/5263090.html
Copyright © 2011-2022 走看看