UiAutomator Android 的自动测试框架(基础)「建议收藏」

UiAutomator Android 的自动测试框架(基础)「建议收藏」</pre>很久没更新博客了,今天至后期的一段时间将带给大家的是<spanstyle=”font-family:微软雅黑;font-size:14px;line-height:21px;widows:auto;”>UiAutomatorandroid的自动测试框架,一系列的介绍,希望大家喜欢。</span><p></p…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

 

</pre>很久没更新博客了,今天至后期的一段时间将带给大家的是<span style="font-family: 微软雅黑; font-size: 14px; line-height: 21px; widows: auto;">UiAutomator android的自动测试框架,一系列的介绍,希望大家喜欢。</span><p></p><p><span style="font-family: 微软雅黑; font-size: 14px; line-height: 21px; widows: auto;"><span style="color: rgb(51, 51, 51); font-family: Arial; font-size: 14px; line-height: 26px;">采用uiautomator编写的自动化测试工具则可以实现基于UiSelector选择直接操作uiObject来编写</span><span style="color: rgb(51, 51, 51); font-family: Arial; font-size: 14px; line-height: 26px;">基于属性操作具备移植性的测试</span><span style="color: rgb(51, 51, 51); font-family: Arial; font-size: 14px; line-height: 26px;">。它有个弱点就是<span style="color: rgb(51, 51, 51); font-family: Arial; font-size: 14px; line-height: 26px;">在于都是</span><span style="color: rgb(51, 51, 51); font-family: Arial; font-size: 14px; line-height: 26px;">基于像素位置操作,不具备移植性,</span></span></span></p><p><span style="font-family: 微软雅黑; font-size: 14px; line-height: 21px; widows: auto;"><span style="font-family: Arial; font-size: 14px; line-height: 26px;"><span style="font-family: Arial; font-size: 14px; line-height: 26px;"></span></span></span></p><p style="font-family: Arial; font-size: 14px; line-height: 26px;"><span style="color:#ff0000;">注:</span></p><p style="color: rgb(51, 51, 51); font-family: Arial; font-size: 14px; line-height: 26px;">android官方给出的版本条件如下,若低于这些版本请先下载新版本</p><p style="color: rgb(51, 51, 51); font-family: Arial; font-size: 14px; line-height: 26px;"><strong>Android SDK Tools, Revision 21 or higherAndroid SDK Platform, API 16 or higher</strong></p><p style="color: rgb(51, 51, 51); font-family: Arial; font-size: 14px; line-height: 26px;">在开始测试前请先配置好你的环境变量(环境变量的搭建请大家百度),java JDK请使用1.7</p><p style="color: rgb(51, 51, 51); font-family: Arial; font-size: 14px; line-height: 26px;">本次的说明主要是在eclipse开发工具中讲解</p><p style="color: rgb(51, 51, 51); font-family: Arial; font-size: 14px; line-height: 26px;">我们首先打开eclipse创建以个java项目,记住是java项目,创建自己的包名,创建libs文件夹,用于存放我们的jar包,用到的jar包<img src="https://img-blog.csdnimg.cn/2022010617435544548.png" alt="" /></p><p style="color: rgb(51, 51, 51); font-family: Arial; font-size: 14px; line-height: 26px;">   <strong>他在文件的</strong></p><p style="color: rgb(51, 51, 51); font-family: Arial; font-size: 14px; line-height: 26px;"><img src="https://img-blog.csdnimg.cn/2022010617435518804.png" style="color: rgb(51, 51, 51); font-family: Arial; font-size: 14px; line-height: 26px;" alt="" /></p><p style="color: rgb(51, 51, 51); font-family: Arial; font-size: 14px; line-height: 26px;">上图我用的是android 19包下面的jar包,将jar包拷贝到libs文件夹中,并且将jar包导入到项目中,</p><p style="color: rgb(51, 51, 51); font-family: Arial; font-size: 14px; line-height: 26px;">下面我们将开始进行编程了:</p><p style="color: rgb(51, 51, 51); font-family: Arial; font-size: 14px; line-height: 26px;">在包中创建Class(类) 我创建的类Test   他必须继承 UiAutomatorTestCase </p><p style="color: rgb(51, 51, 51); font-family: Arial; font-size: 14px; line-height: 26px;">接下来就是创建方法,注意的是方法名必须是test开头,不要问我为什么,这是规矩,</p><p style="color: rgb(51, 51, 51); font-family: Arial; font-size: 14px; line-height: 26px;">如下面的代码</p><p style="color: rgb(51, 51, 51); font-family: Arial; font-size: 14px; line-height: 26px;"><strong></strong></p><pre name="code" class="java">public void testDemo() throws UiObjectNotFoundException
	{
		UiDevice.getInstance().pressHome();//点击home键
		UiObject browser=new UiObject(new UiSelector().text("互联网"));//找到浏览器
		browser.clickAndWaitForNewWindow();//点击浏览器
		UiObject edit=new UiObject(new UiSelector().className("android.widget.EditText"));//得到浏览器中的网页输入框
		edit.click();//点击输入框这样就能使光标在输入框上
		UiDevice.getInstance().pressDelete();//删除浏览框中的网址
		edit.setText("www.baidu.com");//设置我们想输入的网址
		UiDevice.getInstance().pressEnter();//回车进行浏览,在部分手机不支持回车浏览,可以使用上面的方式得到浏览按钮在点击进行浏览
		sleep(3000);
		
	}

代码中主要是实现找到手机自带的浏览器并且点击进入实现自动输入www.baidu.com,并进行浏览

 

在这里大家就会问怎么才能等到手机上面的浏览器已经手机上的输入框,下面将通过图解来给大家呈现:

在eclipse中有的图标如果没有请在
 

 

 

进行添加

 

当手机通过adb连接上电脑后再eclipse中就会出现如同:

 

选中我们的手机,我用的手机是samsumg 点击上图红框的图,就会出现如下图

 

鼠标在左侧移动式就有个红色的框框跟随你移动右面就会显示框框选中的app的属性,如,

通过上面的方式我们打开浏览器:

再继续找浏览器中输入网址的文本框如下图:

 

这样就能通过class来找到文本框,

完成上面的代码我们

我盟在dos命令窗体中输入android create uitest -project -n uidemo -t 1 -p E:\xingdun\Test 

为了方便大家我们可以在我们创建的java工程文件夹下面 我的工程文件在  

 

按住shifi 右键鼠标就会出现在“在此处打开命令窗口”

 

在命令窗口 android create uitest -project -n uidemo -t 1 -p E:\xingdun\Test

 

出现“added file  xxxxxxxx”表示成功

我们回到eclipse中刷新我们的项目就会出现  一个build.xml文件,

 

打开这个文件 将最上面的 default =“ help”修改成build ,保存,

 

run as  这个build ,不是项目

 

 

控制台出现如图表示成功

 

 

这时我们将我们的demo.jar  这里大家会问为什么是demo.jar  这里的demo.jar来源于build中的 <project name=”demo” default=”build”>  project name  

接下来就是将我们的demo.jar通过adb push到我们的手机中

 

成功将在命令窗口显示多少K,表示成功 

接下来就是开始运行我们的程序,运行程序我们可以继续通过adb来运行,

在命令窗体输入adb shell uiautomator runtest demo.jar -c com.test.Test点击回车这样就能看见我们的劳动成果了

说明  runtest demo.jar 中的demo.jar是我们复制到手机中的jar包, -c 后面的com.test.Test 是我们的项目包名+类名,由于我们的项目只有一个方法就直接

跟的包名+类名,其实最全面的写法是在包名后面还有跟#和方法名,有多少方法就直接#多少方法。

 

 

 

 

想要更多的编程学习资料,请关注微信公众号:IT010101

UiAutomator Android 的自动测试框架(基础)「建议收藏」

UiAutomator Android 的自动测试框架(基础)「建议收藏」

 

 

 

 

 

 

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/180553.html原文链接:https://javaforall.net

(0)
上一篇 2022年10月18日 下午6:00
下一篇 2022年10月18日 下午6:16


相关推荐

  • 10v转16v_颜色代码转rgb

    10v转16v_颜色代码转rgb/*  NV12ToARGBcolorspaceconversionCUDAkernel  ThissampleusesCUDAtoperformasimpleNV12(YUV4:2:0planar)  sourceandconvertstooutputinARGBformat*/#include

    2026年3月7日
    7
  • 科大讯飞与华为联合发布讯飞星火AIPC

    科大讯飞与华为联合发布讯飞星火AIPC

    2026年3月14日
    2
  • Django(20)ORM模型迁移命令

    Django(20)ORM模型迁移命令迁移命令makemigrations:将模型生成迁移脚本。模型所在的app,必须放在settings.py中的INSTALLED_APPS中。这个命令有以下几个常用选项:app_label:后面可

    2022年7月30日
    8
  • 手机不显示允许usb调试_安卓手机怎么开启usb调试模式

    手机不显示允许usb调试_安卓手机怎么开启usb调试模式问题真机调试,连接USB后,通常会显示如下认证。未认证的设备显示如下有些机器在某些情况下,可能没有弹出认证窗口,可以通过下面的方式尝试解决。解决在开发者选项中撤销USB调试授权执行adbreconnect重新插拔USB调试线重新你的手机尝试关闭,开启一次USB调试尝试关闭开发者模式,重新打开开发者模式…

    2025年11月3日
    3
  • CSS伪类与伪元素「建议收藏」

    CSS伪类与伪元素「建议收藏」为什么要引入伪类与伪元素?css引入伪类和伪元素概念是为了格式化文档树以外的信息。也就是说,伪类和伪元素是用来修饰不在文档树中的部分,比如,一句话中的第一个字母,或是列表中的第一个元素,又或者是鼠标悬停在某个超链接上时要设置的样式。什么是伪类,伪元素?伪类:用于当已有元素处于的某个状态时,为其添加对应的样式,这个状态是根据用户行为而动态变化的。比如说,当用户悬停在指定的元素时,我们可以…

    2025年8月25日
    5
  • PyPDF2模块[通俗易懂]

    PyPDF2模块[通俗易懂]1、PdfFileReader构造方法:PyPDF2.PdfFileReader(stream,strict=True,warndest=None,overwriteWarnings=True)stream:*File对象或支持与File对象类似的标准读取和查找方法的对象,也可以是表示PDF文件路径的字符串。*strict(bool):确定是否应该警告用户所用的…

    2022年6月23日
    32

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号