Android自动化测试-Uiautomator的使用

UiAutomator使用

Android自动化测试

1. 环境搭建

必备条件
1、JDK
2、SDK(API高于15)
3、Eclipse(安装ADT插件)
4、ANT(用于编译成jar)

简要步骤
1、安装JDK并添加环境变量。
安装后,一定要通过JAVA_HOME的方式添加环境变量,即先建立JAVA_HOME变量,然后在path中添加%JAVA_HOME%\bin;
2、添加SDK环境变量。
一定要先建立ANDROID_HOME,然后把%ANDROID_HOME%\tools添加到path中;
3、安装Eclipse,并安装ADT插件。
4、安装ANT工具,并添加环境变量。
同样一定要先建立%ANT_HOME%变量,然后在path中添加%ANT_HOME%\bin

2. 详细操作

2.1 新建JavaProject

新建JavaProject

2.2 添加JUint库

添加JUint库

2.3 添加Android库

Paste_Image.png
Paste_Image.png

2.4 示例代码

package com;  
import com.android.uiautomator.core.UiObject;  
import com.android.uiautomator.core.UiObjectNotFoundException;  
import com.android.uiautomator.core.UiScrollable;  
import com.android.uiautomator.core.UiSelector;  
import com.android.uiautomator.testrunner.UiAutomatorTestCase;  
  
public class Runner extends UiAutomatorTestCase {  
  
    public void testDemo() throws UiObjectNotFoundException {  
        getUiDevice().pressHome();  
        // 进入设置菜单  
        UiObject settingApp = new UiObject(new UiSelector().text("Settings"));  
        settingApp.click();  
        //休眠3秒  
        try {  
            Thread.sleep(3000);  
        } catch (InterruptedException e1) {  
            // TODO Auto-generated catch block  
            e1.printStackTrace();  
        }  
        // 进入语言和输入法设置  
        UiScrollable settingItems = new UiScrollable( new UiSelector().scrollable(true));  
  
        UiObject languageAndInputItem = settingItems.getChildByText(  
                new UiSelector().text("Language & input"), "Language & input", true);  
        languageAndInputItem.clickAndWaitForNewWindow();  
          
    }  
}  

2.5 找到SDK id

找到SDK id

2.6 创建build文件

命令行运行以下命令:

android create uitest-project -n <name> -t <android-sdk-ID> -p <path>

示例:

android create uitest-project -n AutoRunner -t 2 -p D:\gogs\develop\ireaders_android\AutoRunner

2.7 编译生成jar

cmd进入工程目录,然后运行

ant build

编译生成jar,如下图所示:

编译生成jar

2.8 push并运行jar

运行以下命令:

adb push <jar文件路径> data/local/tmp
adb shell uiautomator runtest <jar文件名> -c <工程中的类名,包含包名>

示例:

adb push D:\gogs\develop\ireaders_android\AutoRunner\bin\AutoRunner.jar data/local/tmp

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

运行成功结果如下图所示:

push并运行jar
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 180,425评论 25 708
  • afinalAfinal是一个android的ioc,orm框架 https://github.com/yangf...
    passiontim阅读 15,960评论 2 45
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 137,173评论 19 139
  • 你会因为一个人喜欢上了一款饮料或美食
    带血的小黄瓜阅读 203评论 0 0
  • 秋天是个美丽的时节,热去凉来,绿退金生。同时它又有恼人的气息,人们把诸多不顺,甚至形容为「多事之秋」,爱恨交织。 ...
    杨夏阅读 298评论 1 2

友情链接更多精彩内容