在ADT中新建一个Java项目,将Android SDK中对应Jar包复制到项目中
android.jar
uiautomator.jar
即可进行自动化黑盒测试的编写,如
public class MyTest extends UiAutomatorTestCase{
public void testDemo{
UiDevice.getInstance().pressMenu(); //点击Menu键
}
}
执行步骤
1.创建build.xml文件
android create uitest-project -n <jars> -t 1 -p <workspace path>
//<jars>为jar包名字
//<workspace>为工作路径
2.修改build.xml
进入工作空间,打开build.xml文件 将第二行的help修改为build
<project name="demo" default="build">
3.用Ant进行编译
ant-buildfile <build.xml 文件路径>
4.将编译的Jar包push到手机/模拟器上
adb push <path_to_output_jar> /data/local/tmp/
5.运行Jar包进行黑盒测试
adb shell uiautomator runtest <jars> -c <包名>.<类名> [#test name]
示例
android create uitest-project -n demo.jar -t 5 -p ~/Documents/Eclipse
//进入build.xml进行修改
cd Documents/Eclipse
ant --buildfile build.xml
adb push bin/demo.jar /data/local/tmp/
adb shell uiautomator runtest demo.jar -c com.potato.test.MyTest
过程优化:
1.过程脚本化
编写auto_run.sh脚本,将上述命令放在脚本中,一键执行
2.过程代码化推荐
将上述命令以Java代码的形式集成在测试项目中,每次只需运行程序,就会自动执行上述过程
参考项目:https://github.com/fan2597/UiAutomatorHelper