https://github.com/zhongantech/za-farmer
基于uiautomator2.0 的自动化测试工具
https://github.com/zhongantech/za-farmer
android cli java uiautomator2
Last synced: 3 months ago
JSON representation
基于uiautomator2.0 的自动化测试工具
- Host: GitHub
- URL: https://github.com/zhongantech/za-farmer
- Owner: ZhongAnTech
- License: mit
- Created: 2019-05-24T09:45:07.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2019-12-31T09:08:06.000Z (almost 6 years ago)
- Last Synced: 2025-04-05T12:42:03.439Z (8 months ago)
- Topics: android, cli, java, uiautomator2
- Language: Java
- Size: 653 KB
- Stars: 68
- Watchers: 5
- Forks: 21
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# za-Farmer
[](https://travis-ci.com/ZhonganTechQA/za-Farmer)
za-Farmer 是一个基于Uiautomator2.0 的命令行自动化工具,你可以通过命令行驱动Uiautomator进行Android自动化测试。
我们封装了Android大部分常用操作,你可以很容易的使用它实现你的Android自动化需求。
它可以帮你自动处理权限弹窗,并配套有完整的执行日志和过程截图,帮助你还原执行过程中的情况。
## 内容列表
- [特性](#特性 )
- [构建](#构建 )
- [安装](#安装 )
- [简单示例](#简单示例 )
- [步骤介绍](./markdown/stepIntroduce.md)
## 特性
### 1、步骤执行自动截图
执行过程中每个步骤都会截图记录操作的元素或标注执行轨迹


### 2、权限弹框自动处理
对于应用程序弹出的权限弹框进行自动处理

## 构建
```bash
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以下安装方式:
```bash
adb install ./app/build/outputs/apk/androidTest/debug/app-debug-androidTest.apk
```
```bash
adb install ./app/build/outputs/apk/debug/app-debug.apk
```
- 安卓5.0以上安装方式:
```bash
adb install -g ./app/build/outputs/apk/androidTest/debug/app-debug-androidTest.apk
```
```bash
adb install -g ./app/build/outputs/apk/debug/app-debug.apk
```
#### 注意:-g 参数为授予所有运行权限,安卓5.0以下不支持
## 简单示例
- #### 点击元素

```bash
$ 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
```
执行完成后导出过程截图
```bash
$ adb pull /storage/emulated/0/Android/data/com.smart.farmer/cache/ ./Desktop/
```

- #### 点击元素,自动处理权限弹框
```bash
$ 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
```
