uiautomator学习笔记(一)简介
uiautomator通过创建具有自动化测试功能的ui测试用例来有效率的测试ui,这种方式能运行在一个或多个设备上。
获取更多用于测试的uiautomator 框架,请看https://stuff.mit.edu/afs/sipb/project/android/docs/tools/testing/testing_ui.html
要运行用例在指定的设备上,你可以使用adb shell命令
adb shell uiautomator runtest <jar
> -c <test_class_or_method> [options]
例子
adb shell uiautomator runtest LaunchSettings.jar
-c com.uia.example.my.LaunchSettings
以下介绍可选option
runtest
1 jar:一个或多个部署到指定设备上的jar文件名,它包含测试用例。通过使用空格分离列出更多jar文件
2 -c <test_class _or_method> :<test_class _or_method>是一系列专门的测试类或测试方法,这些类或方法来自用uiautomator运行的jar文件。
每个测试类或方法必须包含包的名字,
包名.类名
包名.类名#方法名
可使用空格分离多个类或方法
3 --nohup:即使父进程是终端也能完成在这个设备上的测试(比如这个设备没有连接)
4 -e <name> <value> :指明已通过测试类的 name-vlaue 对,可能name-value重复
注意:必须每个选项都用-e 分离
5 -e debug [true|false]:开始前等待debugger连接
6 dump [files]:以xml文件的方式抛到hierachy viewer上,没有专门设置的话,默认dump file存放在/storage/sdcard0/window_dump.xml
events
1 等到设备连接到终端,在控制台上输出所有可能事件。
uiautomator API
The uiautomator
API 绑定在uiautomator.jar
file ,这个文件在<android-sdk>/platforms/dreectory下。
原始英文文档请看https://stuff.mit.edu/afs/sipb/project/android/docs/tools/help/uiautomator/index.html#api