Android自动化测试uiautomator入门

一、准备jar包

在sdk的platforms子目录下找到对应android系统版本的sdk,我这里模拟器中启动的是android4.4.2,所以我选择的是android-19,取得该目录下的两个jar包

1、android.jar

2、uiautomator.jar

这里写图片描述

二、创建java project

打开eclipse,新建java project,把上一步中取得的jar包添加到依赖。
新建一个package(例:com.xyh),创建一个java类(继承UiAutomatorTestCase),创建一个以test为前缀的测试方法,例:

package com.xyh;

import com.android.uiautomator.core.UiDevice;
import com.android.uiautomator.core.UiObject;
import com.android.uiautomator.core.UiObjectNotFoundException;
import com.android.uiautomator.core.UiSelector;
import com.android.uiautomator.testrunner.UiAutomatorTestCase;

public class TestUIAutomation extends UiAutomatorTestCase {
    public void testBrowser() throws UiObjectNotFoundException{

    }
}

打开genymotion,启动android模拟器:

这里写图片描述

打开cmd,执行uiautomatorviewer.bat(该脚本位于sdk目录的tools子目录下,需要加入环境变量,或者cd到该目录执行),打开成功后会出现该界面:

这里写图片描述

点击上图中小图标,会出现模拟器中的android系统界面:

这里写图片描述

我们这里以打开浏览器,进去www.qq.com网站的一个自动化脚本为例,so,在uiautomatorviewer中点击浏览器图标,然后我们可以在node detail中看到该控件结点的详细信息,记下text信息,后面脚本代码中会用到:

这里写图片描述

然后在模拟器中打开浏览器,再回到uiautomatorviewer中点击浏览器的地址输入框,可以在node detail中看到该控件结点的详细信息,记下class信息,后面脚本代码中会用到:

这里写图片描述

准备工作都做好了,现在我们来编写我们的测试脚本:

package com.xyh;

import com.android.uiautomator.core.UiDevice;
import com.android.uiautomator.core.UiObject;
import com.android.uiautomator.core.UiObjectNotFoundException;
import com.android.uiautomator.core.UiSelector;
import com.android.uiautomator.testrunner.UiAutomatorTestCase;

public class TestUIAutomation extends UiAutomatorTestCase {
    public void testBrowser() throws UiObjectNotFoundException{
        UiObject browserObject = new UiObject(new UiSelector().text("浏览器"));
        browserObject.clickAndWaitForNewWindow();
        UiObject editObject = new UiObject(new UiSelector().className("android.widget.EditText"));
        editObject.click();
        UiDevice.getInstance().pressDelete();
        editObject.setText("www.qq.com");
        UiDevice.getInstance().pressEnter();
        sleep(2000);
    }
}

三、生成build.xml

打开cmd命令行,cd到java project(该脚本工程所在)目录,执行:

android create uitest-project -n demo -t 1 -p E:\android—_project\Demo

-n:生成的jar名字

-t:使用的target id(可以执行adb list targets查看)

-p:java project目录

执行成功后会输出:Added file E:\android—_project\Demo\build.xml,在我们的java project目录下会多出一个build.xml文件。

四、生成jar

切换回eclipse中,在java project中找到并打开build.xml,修改头部project标签的default属性为build,点击run,选择ant build,直至console输出BUILD SUCCESSFUL并在工程bin目录底下生成demo.jar文件。

五、拷贝到android手机并执行

1、拷贝demo.jar到手机/data/local/tmp/目录:

adb push demo.jar /data/local/tmp/

2、执行自动化脚本

adb shell uiautomator runtest demo.jar -c com.xyh.TestUIAutomation

这时候我们就会看到手机自动打开浏览器并且进入QQ官网首页。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值