Uiautomator的编译运行过程需要输入好几个命令,太麻烦。
花了点时间写了个简单的bat。方便多了。id输入当前使用的SDK ID号(android list target命令可以查看到),class输入测试类的完整名称,包括包名。放到项目目录下运行即可。
1 @echo Now,uiautomator test start.. 2 @pause 3 @echo Please enter the android sdk id: 4 @set /p id= 5 @echo Please enter the full name of the class: 6 @set /p class= 7 @rem 获取当前目录名 8 @for %%i in ("%cd%") do set dir=%%~ni 9 @rem 调用生成测试项目命令,使用到当前目录名(项目名与当前目录名一致),及当前绝对路径。 10 @call android create uitest-project -n %dir% -t %id% -p %~dp0 11 @rem 调用编译命令 12 @call ant build 13 @rem 将测试jar包推送到安卓系统中,使用到当前目录名(之前生成的jar包名与当前目录名一致)。 14 @call adb push bin/%dir%.jar data/local/tmp 15 @rem 运行测试代码,使用到当前目录名(即jar包名)。 16 @call adb shell uiautomator runtest %dir%.jar -c %class% 17 @echo Test finish. 18 @pause
写bat中遇到的问题:
1.隐藏命令显示:每一行前加@,或者直接第一行echo off
2.运行第一条命令后不继续运行。调用的命令前均加上关键字:call
3.参数的调用:set关键字设置参数后,使用%参数%方式调用
4.获取当前路径:%~dp0
5.获取当前目录名:for %%i in ("%cd%") do set dir=%%~ni
6.获取输入并赋值:set /p 参数=
浙公网安备 33010602011771号