Android自动化测试-UiAutomator环境搭建(QQ交流群:490451176)

一、环境准备

  1. 安装android sdk,并配置环境变量

  2. 安装android studio,国内访问官网受限,如果下载不到,可以到我的百度云盘下载:

    https://pan.baidu.com/s/1bpq5wK3

   此云盘中有uiautomator2所依赖的jar包,可以同时下载

   

二、新建Android Studio工程

  

  新建一个project,输入application name,下一步,

  

  默认选择,下一步,

  

  选择 empty activity:

  

  最后finish之后,切换到project视图;

  

  右击工程,新建一个libs,并把网盘中下载的uiautomator依赖的jar包,copy进来,并添加依赖,

  

  Add As Library之后,会弹出一个小框,选择app,点击OK

  

  这样我们的工程就建好了,左上角,把我们的project模式切换成android模式,

  

  现在android视图模式下,界面就比较简洁直观了,如下图所示:标注android test的地方,就是我们要写测试用例的包,

  

  新家一个java class,输入class name,现在我们就可以开开心心的写测试代码了

三、测试实例

  下面我们写一个例子,启动模拟器,模拟器home上有个chrome浏览器,操作步骤:点击chrome-输入www.baidu.com-enter;

  点击android studio上的 AVD manager,就可以启动模拟器,模拟器界面如下:

  

  

  测试用例:

    1. 点击chrome

    2. 输入www.baidu.com

    3. Enter

  代码如下:

    

  

  写好测试用例之后,我们就可以运行了,在运行之前,我们先看下运行配置:

  

  在配置文件中,一定要有如下一行代码,如果没有,可以自己加上:

  testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"

  现在就可以运行了,打开你的模拟器,看下界面有什么效果:

  

  完整代码如下:

 import android.app.Instrumentation;
import android.support.test.InstrumentationRegistry;
import android.support.test.runner.AndroidJUnit4;
import android.support.test.uiautomator.UiDevice;
import android.support.test.uiautomator.UiObject;
import android.support.test.uiautomator.UiObjectNotFoundException;
import android.support.test.uiautomator.UiSelector;
import android.view.KeyEvent; import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith; /**
* Created by tianxing on 2017/8/15.
*/ @RunWith(AndroidJUnit4.class)
public class helloworld { UiDevice uiDevice;
Instrumentation instrumentation; @Before
public void setUp(){
instrumentation = InstrumentationRegistry.getInstrumentation();
uiDevice = UiDevice.getInstance(instrumentation);
} @Test
public void launchChrome(){
UiObject chrome = uiDevice.findObject(new UiSelector().text("Chrome"));
UiObject searchContent = uiDevice.findObject(new UiSelector().text("Search or type URL")); try {
chrome.click();
sleep(2000);
searchContent.setText("www.baidu.com");
uiDevice.pressKeyCode(KeyEvent.KEYCODE_ENTER);
} catch (UiObjectNotFoundException e) {
e.printStackTrace();
} } public void sleep(int mint){
try{
Thread.sleep(mint);
}catch (InterruptedException e){
e.printStackTrace();
}
} }

Android自动化测试-UiAutomator2环境搭建的更多相关文章

  1. Android自动化测试之环境搭建

    Android自动化测试之环境搭建 一.Android-sdk介绍 SDK(Software development kit)软件开发工具包.被软件开发工程师用于为特定的软件包.软件框架.硬件平台. ...

  2. 移动端自动化测试Appium环境搭建(part1-2-3)

    Appium移动端自动化测试相信大家都不陌生,appium的铁哥们是selenium,不管是selenium还是appium,都是调用webdriver来做自动化测试.今天关于appium的介绍我们不 ...

  3. android NDK开发环境搭建

    android NDK开发环境搭建 2012-05-14 00:13:58 分类: 嵌入式 基于 Android NDK 的学习之旅-----环境搭建 工欲善其事必先利其器 , 下面介绍下 Eclip ...

  4. Android studio 开发环境搭建

    Android studio 开发环境搭建 一.环境: 下载java jdk:http://www.oracle.com/technetwork/cn/java/javase/downloads/jd ...

  5. Android入门之环境搭建

    欢迎访问我的新博客:http://www.milkcu.com/blog/ 原文地址:http://www.milkcu.com/blog/archives/1376935560.html 原创:An ...

  6. android测试开发环境搭建

    本文档针对未接触过android的0基础人员,在开始熟悉android之前,首先需要一个学习环境来支撑,在此简单介绍一下android环境搭建.(当然大家也可以百度.谷歌,类似的文档很多) 环境搭建: ...

  7. Android Studio Jni 环境搭建

    第一步:NDK环境搭建,点击下图红色框区域查看NDK下载和环境配置 安照正常情况是很慢的或者无法下载成功的,这个时候可以去下载NDK压缩包进行解压.下面给出两个下载地址 (1)官网:http://we ...

  8. Android开发开始--环境搭建

    一.搭建Android开发环境 1.JDK (Java Development Kit) 2.Eclipse 3.Android SDK (Software Development Kit) 4.AD ...

  9. 转--Android资源总结(环境搭建/ 反编译工具)

    在Android发展前景相当好的情况下,本人最近搜集了一些关于Android的相关资源,当然包含以前发布的博客内容,进行了一次大整合,希望对和我一样是Android的初学者管用,如在文章中有所错误,敬 ...

随机推荐

  1. MAC nginx代理设置

    问题: 10.154.156.83:10081私服不存在了.但是不能改.用nginx代理至maven.xx.cn 增加换回地址: sudo ifconfig lo0 add 10.154.156.83 ...

  2. UOJ #185【ZJOI2016】 小星星

    题目链接:小星星 首先有个暴力很好想.令\(f_{i,j,S}\)表示把\(i\)这棵子树对应到原图中的\(S\)集合,\(i\)号点对应到了\(j\)号点的方案数.这玩意儿复杂度是\(O(3^nn^ ...

  3. m_Orchestrate learning system---二十八、字體圖標iconfont到底是什麼

    m_Orchestrate learning system---二十八.字體圖標iconfont到底是什麼 一.总结 一句话总结: 阿里巴巴 图标库 iconfont-阿里巴巴矢量图标库 1.表格的t ...

  4. UVA-4288 Cat vs. Dog (最大独立集)

    题目大意:猫狗大赛,s个猫和t个狗,有v个投票者,他们不是爱猫者就是爱狗者,所以爱猫者一定会对某条猫投晋级票,对某条狗投淘汰票,爱狗者亦然.现在已知这v个人的投票情况,应该使哪些畜牲晋级或淘汰才能使投 ...

  5. UVA-11925 Generating Permutations (逆向思维)

    题目大意:给出1~n的某个排列,问由升序变到这个排列最少需要几次操作.操作1:将头两个数交换:操作2:将头一个数移动最后一个位置. 题目分析:反过来考虑,将这个排列变为升序排列,那么这个变化过程实际上 ...

  6. oracle修改字符编码

    ALTER DATABASE character set INTERNAL_USE ZHS16GBK;  ALTER DATABASE CHARACTER SET ZHS16GBK;  oracle修 ...

  7. SPOJ COMPANYS Two Famous Companies 最小生成树,二分,思路 难度:2

    http://www.spoj.com/problems/COMPANYS/en/ 题目要求恰好有k条0类边的最小生成树 每次给0类边的权值加或减某个值delta,直到最小生成树上恰好有k条边为0,此 ...

  8. bzoj3862

    题解: 这一道题目和模板有不同的地方就是在于可以修改只有一条边和i相邻 于是我们还要记录与这个点相邻的点有没有改变 代码: #pragma GCC optimize(2) #include<bi ...

  9. 201621123010《Java程序设计》第3周学习总结

    1.本周学习总结 初学面向对象,会学习到很多碎片化的概念与知识.尝试学会使用思维导图将这些碎片化的概念.知识点组织起来.请使用工具画出本周学习到的知识点及知识点之间的联系.步骤如下: 1.1 写出你认 ...

  10. 一起玩转mysql

    mysql安装 一起玩转mysql linux命令