Skip to content

ZhongAnTech/za-Farmer

Repository files navigation

za-Farmer

Build Status

za-Farmer 是一个基于Uiautomator2.0 的命令行自动化工具,你可以通过命令行驱动Uiautomator进行Android自动化测试。

我们封装了Android大部分常用操作,你可以很容易的使用它实现你的Android自动化需求。

它可以帮你自动处理权限弹窗,并配套有完整的执行日志和过程截图,帮助你还原执行过程中的情况。

内容列表

特性

1、步骤执行自动截图

执行过程中每个步骤都会截图记录操作的元素或标注执行轨迹

1560233295793.jpg1560305600360.jpg

2、权限弹框自动处理

对于应用程序弹出的权限弹框进行自动处理
1560307039959.jpg

构建

git clone https://github.com/ZhonganTechQA/za-Farmer.git
cd ./za-Farmer
./gradlew clean assembleAndroidTest assembleDebug

成功后生成两个apk

./app/build/outputs/apk/androidTest/debug/app-debug-androidTest.apk

./app/build/outputs/apk/debug/app-debug.apk

安装

  • 安卓5.0以下安装方式:
adb install  ./app/build/outputs/apk/androidTest/debug/app-debug-androidTest.apk
adb install  ./app/build/outputs/apk/debug/app-debug.apk
  • 安卓5.0以上安装方式:
adb install -g ./app/build/outputs/apk/androidTest/debug/app-debug-androidTest.apk
adb install -g ./app/build/outputs/apk/debug/app-debug.apk

注意:-g 参数为授予所有运行权限,安卓5.0以下不支持

简单示例

  • 点击元素

1559791932003.jpg

$ adb shell am instrument -w  -e class 'com.smart.farmer.ExampleInstrumentedTest#step'  \
 -e step-action click \
 -e step-elementText 设置  \
 com.smart.farmer.test/android.support.test.runner.AndroidJUnitRunner

执行完成后导出过程截图

$ adb pull /storage/emulated/0/Android/data/com.smart.farmer/cache/  ./Desktop/

1559791932003.jpg

  • 点击元素,自动处理权限弹框

$ adb shell am instrument -w  -e class 'com.smart.farmer.ExampleInstrumentedTest#step' \ 
 -e step-action click 
 -e step-elementText 随便看看 
 -e step-autoPermit true  com.smart.farmer.test/android.support.test.runner.AndroidJUnitRunner

1560851185191.jpg1560851188145.jpg