项目地址:
https://github.com/seveniruby/AppCrawler
克隆项目:
终端执行命令:git clone https://github.com/seveniruby/AppCrawler.git
克隆完成用IDEA打开项目
README.md文件是AppCrawler的简介以及使用介绍
Usage: appcrawler [options]
-a, --app <value> Android或者iOS的文件地址, 可以是网络地址, 赋值给appium的app选项
-e, --encoding <value> set encoding, such as UTF-8 GBK
-c, --conf <value> 配置文件地址
-p, --platform <value> 平台类型android或者ios, 默认会根据app后缀名自动判断
-t, --maxTime <value> 最大运行时间. 单位为秒. 超过此值会退出. 默认最长运行3个小时
-u, --appium <value> appium的url地址
-o, --output <value> 遍历结果的保存目录. 里面会存放遍历生成的截图, 思维导图和日志
--capability k1=v1,k2=v2...
appium capability选项, 这个参数会覆盖-c指定的配置模板参数, 用于在模板配置之上的参数微调
-y, --yaml <value> 代表配置的yaml语法,比如blackList: [ {xpath: action_night } ],用于避免使用配置文件的情况
-r, --report <value> 输出html和xml报告
--template <value> 输出代码模板
--master <value> master的diff.yml文件地址
--candidate <value> candidate环境的diff.yml文件
-v, --verbose-debug 是否展示更多debug信息
-vv, --verbose-trace 是否展示更多trace信息
--demo 生成demo配置文件学习使用方法
--help
示例
appcrawler -a xueqiu.apk
appcrawler -a xueqiu.apk --capability noReset=true
appcrawler -c conf/xueqiu.json -p android -o result/
appcrawler -c xueqiu.yaml --capability udid=[你的udid] -a Snowball.app
appcrawler -c xueqiu.yaml -a Snowball.app -u 4730
appcrawler -c xueqiu.yaml -a Snowball.app -u http://127.0.0.1:4730/wd/hub
#生成demo配置文件到当前目录下的demo.yaml
appcrawler --demo
#启动已经安装过的app
appcrawler --capability "appPackage=com.xueqiu.android,appActivity=.view.WelcomeActivityAlias"
#使用yaml参数
appcrawler -a xueqiu.apk -y "blackList: [ {xpath: action_night}, {xpath: '.*[0-9\\.]{2}.*'} ]"
#从已经结束的结果中重新生成报告
appcrawler --report result/
打jar包
在IDEA的terminal执行以下命令:
1)git branch -a 查看所有分支
2)git checkout 2.7.4 切换到最新分支
3)mvn clean compile 编译项目
4)mvn assembly:single 打包
打包完成后在项目target目录下即可找到打出来的jar包:appcrawler-2.7.4-hogwarts.jar
自动遍历操作过程
1)连接真机或模拟器,使用adb devices验证连接成功
2)获取雪球app包名、启动activity
adb shell pm list packages -3(com.xueqiu.android)
adb shell dumsys package com.xueqiu.android | grep -A 1 MAIN(.view.WelcomeActivityAlias)
3)以默认配置执行用例的命令:java -jar appcrawler-2.7.4-hogwarts.jar --capability "appPackage=com.xueqiu.android,appActivity=.view.WelcomeActivityAlias"
默认在执行命令的目录下,生成一个以时间命名的目录。在该目录下:
1)打开index.html即可查看测试报告
2)日志文件:appcrawler.log
demo.yaml
生成配置文件命令: java -jar appcrawler-2.7.4-hogwarts.jar --demo,会在当前目录下生成demo.yaml,通过这个文件可以定制化配置
按配置文件执行用例的命令:java -jar appcrawler-2.7.4-hogwarts.jar -c demo.yaml
demo.yaml配置文件介绍
1)capability配置
capability:
appActivity: ".view.WelcomActivityAlias"
appium: "http://127.0.0.1:4723/wd/hub"
noReset: "true"
dontStopAppOnReset: "false"
appPackage: "com.xueqiu.android"
fullReset: "false"
2)testcase
3)selectedlist
4)backButton
注意:
BackButton需要设置,否则默认点击的是物理返回键,无法回到上一级页面