Skip to content
基于appium的app自动遍历工具
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
doc 修复默认配置的错误。改进跳出app的判断逻辑。回到app的方式调整为launchApp。更新依赖。增加演示例子。 Oct 28, 2017
lib
project
src 修复swipe偏移 Oct 28, 2017
.gitignore
CHANGELOG.md fix showCancel Oct 28, 2017
LICENSE add apache license May 20, 2019
README.md 更新文档 Oct 15, 2017
build.sbt 修复swipe偏移 Oct 28, 2017

README.md

AppCrawler

一个基于自动遍历的app爬虫工具. 支持android和iOS, 支持真机和模拟器. 最大的特点是灵活性. 可通过配置来设定遍历的规则.

为什么做这个工具

  • 各大云市场上自动遍历功能都多有限制企业无法自由定制.
  • 解决monkey等工具可控性差的缺点
  • 发现深层次的UI兼容性问题
  • 通过新老版本的diff可以发现每个版本的UI变动范围

设计目标

  • 自动爬取加上规则引导(完成)
  • 支持定制化, 可以自己设定遍历深度(完成)
  • 支持插件化, 允许别人改造和增强(完成)
  • 支持滑动等更多动作(完成)
  • 支持自动截获接口请求(完成)
  • 支持新老版本的界面对比(Doing)
  • 云端兼容性测试服务利用, 支持Testin MQC MTC(Doing)

安装依赖

mac下安装appium

#安装node和依赖
brew install node
brew install ideviceinstaller
brew install libimobiledevice
#安装appium
npm install -g appium
#检查appium环境正确性
appium-doctor

真机或者模拟器均可. 确保adb devices可以看到就行

启动appium

使用此工具需要一定的appium基础知识, 请自行google.
目前已经在appium 1.5.3下做过测试

启动appium

appium --session-override

下载appcrawler.

最新版本下载地址: https://pan.baidu.com/s/1dE0JDCH

运行

工具以jar包方式发布,需要java8以上的运行环境

java -jar appcrawler.jar  

快速遍历

#查看帮助文档
java -jar appcrawler.jar
#运行测试
java -jar appcrawler.jar -a xueqiu.apk

配置文件运行方式

#配置文件的方式运行
#Android测试
java -jar appcrawler.jar -c conf/xueqiu.yaml -a xueqiu.apk
#iOS测试
java -jar appcrawler.jar -c conf/xueqiu.yaml -a xueqiu.app

输出结果

默认在当前目录下会生成一个包含输出结果的目录, 以时间命名. 包含了如下的测试结果

  • 所有遍历过的控件组成的思维导图
  • 包含了遍历覆盖的html报告
  • 用于做diff分析的数据文件

示例

更多技术交流

移动测试技术交流社区: https://testerhome.com

QQ技术交流群: 177933995

更多细节

You can’t perform that action at this time.