UiAutomator
2015-07-17 16:31
627 查看
UiAutomator是自动化测试框架,基于Java语言,开发起来很方便,相当于可控制的Monkey测试。
UiAutomator API文档在这里。
注意:从eclipse官网下载的才能编译build.xml为run as ant build,google带adt插件的那款ADT Bundle则不行。
1、在eclipse里面新建java project,取名UiAutomator,finish;
2、新建libs文件夹,将android sdk目录下的uiautomator.jar和android.jar拷贝到此目录并add to build path;
3、新建测试类UiTest,继承自UiAutomatorTestCase,写一个pubic方法,以testXX命名;
4、启动sdk目录tools目录下的uiautomatorviewer,点击device screenshot得到当前手机界面的截图,可以根据此截图写测试代码;
5、代码编写可以参考这里;
6、代码编写完成之后,运行android create uitest-project -n UiAutomator -t "android-22" -p,-p后面接刚才的java工程所在目录;注意这里有可能提示android不是可执行命令,那么需要把android sdk目录添加到环境变量,或者进入到android sdk目录的tools目录下再执行此命令;
7、如果第6步操作成功,那么在java工程UiAutomator目录下则会生成build.xml文件,修改第2行中的help为build;
8、右键点击build.xml文件,选择run as ant build,注意eclipse必须是从官网下载的,不是google提供的ADT bundle,否则不会显示run as ant build;
9、编译过程如果出现Unable to find a javac compiler错误,则是jre设置不正确,在eclipse里面选择window->preference->Java->Installed JREs里面添加jdk安装目录;
10、把编译好的UiAutomator.jar上传到手机的/data/local/tmp目录,其他目录会提示没有权限,上传完成之后执行adb shell uiautomator runtest UiAutomator.jar -c,-c后面接刚才的测试类的全名。
UiAutomator API文档在这里。
注意:从eclipse官网下载的才能编译build.xml为run as ant build,google带adt插件的那款ADT Bundle则不行。
1、在eclipse里面新建java project,取名UiAutomator,finish;
2、新建libs文件夹,将android sdk目录下的uiautomator.jar和android.jar拷贝到此目录并add to build path;
3、新建测试类UiTest,继承自UiAutomatorTestCase,写一个pubic方法,以testXX命名;
4、启动sdk目录tools目录下的uiautomatorviewer,点击device screenshot得到当前手机界面的截图,可以根据此截图写测试代码;
5、代码编写可以参考这里;
6、代码编写完成之后,运行android create uitest-project -n UiAutomator -t "android-22" -p,-p后面接刚才的java工程所在目录;注意这里有可能提示android不是可执行命令,那么需要把android sdk目录添加到环境变量,或者进入到android sdk目录的tools目录下再执行此命令;
7、如果第6步操作成功,那么在java工程UiAutomator目录下则会生成build.xml文件,修改第2行中的help为build;
8、右键点击build.xml文件,选择run as ant build,注意eclipse必须是从官网下载的,不是google提供的ADT bundle,否则不会显示run as ant build;
9、编译过程如果出现Unable to find a javac compiler错误,则是jre设置不正确,在eclipse里面选择window->preference->Java->Installed JREs里面添加jdk安装目录;
10、把编译好的UiAutomator.jar上传到手机的/data/local/tmp目录,其他目录会提示没有权限,上传完成之后执行adb shell uiautomator runtest UiAutomator.jar -c,-c后面接刚才的测试类的全名。
相关文章推荐
- No resource found that matches the given name (at 'drawab' with value '@drawable/你的资源').
- Alex 的 Hadoop 菜鸟教程: 第19课 华丽的控制台 HUE 安装以及使用教程
- UINavigationController小知识点(一)
- runOnUiThread
- Builder Pattern
- require './ex25' can't load such file
- iOS上怎样让按钮(UIbutton)文本左对齐展示
- ServletRequest接口召回总结
- ERROR 1366 (HY000): Incorrect string value: '\xE4\xB8\xAD\xE5\x9B\xBD' for column 'tname' at row 1
- 问题-[致命错误] Project1.dpr(1): Unit not found: 'System.pas' or binary equivalents (DCU,DPU)
- NameValueCollection类读取配置信息
- UITableView 分隔线的自定义方法(可自定义分隔线的颜色 粗细 与屏幕边缘的距离)
- Java Generics Quick Tutorial
- CsQuery 犀利的html代码分析库,像jq一样用c#处理html
- 几个.net的GUI控件库
- 详解Django中Request对象的相关用法
- Android开发过程中R文件丢失clean和build project都无效 已解决
- 自己写的类似UITextView的类,实现UIKeyInput协议
- ServletRequest与ServletResponse
- Ducci Sequence