UI Automator 测试框架提供了一组 API,用于构建在用户应用和系统应用上执行交互的界面测试。通过 UI Automator API,您可以执行在测试设备中打开“设置”菜单或应用启动器等操作。UI Automator 测试框架非常适合编写黑盒式自动化测试,此类测试的测试代码不依赖于目标应用的内部实现细节。
优点:可以对所有的操作来进行自动化,操作简单(eg:点击事件 ,侧滑事件,上拉事件,以及模拟键盘输入测试用例)。可以测试所有设备的程序。
缺点:必须要Android4.0以上才能使用。
UI Automator 的执行呢,需要我们编写完毕打成jar包,直接上传到/data/local/tmp/ 目录下面,然后用adb 命令执行即可。由于是安卓原生的,比较稳定,运行的速度也比较快。
我们下载了安卓的环境变量后,然后下载任意大于4.0的安卓版本sdk即可。
都会有这个jar包,我们在写代码,创建工程的时候,直接引入即可。
如何获取定位呢,我们可以uiautomatorviewer。
I Automator 测试框架的主要功能包括:
用于检查布局层次结构的查看器。
用于检索状态信息并在目标设备上执行操作的 API。
支持跨应用界面测试的 API。
UI Automator 测试框架提供了一个 UiDevice 类,用于在运行目标应用的设备上访问和执行操作。您可以调用其方法以访问设备属性,如当前屏幕方向或显示屏尺寸。UiDevice 类还可用于执行以下操作:
改变设备的旋转。
按硬件键,如“音量调高按钮”。
按返回、主屏幕或菜单按钮。
打开通知栏。
截取当前窗口的屏幕截图。
UI Automator API
通过 UI Automator API,您可以编写可靠的测试,而无需了解目标应用的实现细节。
您可以使用这些 API 在多个应用间捕获和操纵界面组件:
UiCollection:枚举容器的界面元素,目的是为了计数,或者按可见文本或内容说明属性来定位子元素。
UiObject:表示设备上可见的界面元素。
UiScrollable:支持搜索可滚动界面容器中的项目。
UiSelector:表示对设备上的一个或多个目标界面元素的查询。
Configurator:可让您设置用于运行 UI Automator 测试的关键参数。
官方文档
https://developer.android.com/reference/androidx/test/uiautomator/package-summary
官方文档有着详细的介绍
正常的我们加入后,在后可以看到,有什么类,方式是什么,里面有什么api。
我们可以在引入后查看。