UICrawler+adb执行app自动化遍历操作详情步骤(模拟器)(可进行奔溃测试,自动记录crash日志)

执行步骤

1.连接手机
2.安装APP并配置config文件
此步可选(启动appium 服务,不启动也能执行,查看结果和报告)
3.切到 UICrawler-2.0.jar 目录下执行即可.

手机准备工作

# adb连接手机
adb devices
# 获取设计设备序列号
adb get-serialno 
ENU7N15A30004129
# adb安装app
adb install app包地址(可直接拖过来)也可以直接写路径地址

连接模拟器

# 模拟器设备号
127.0.0.1:62001

连接实体手机的设置基本是一样的

adb获取app的包名和activity

# 获取第三方app的包名
adb shell pm list packages -3
# 获取当前正在运行的app的activity
adb shell "dumpsys window | grep mCurrentFocus"
# 时代财经包名
package:com.timeweekly.timefinance
# activity
  mCurrentFocus=Window{41167c u0 com.android.launcher3/com.android.launcher3.Launcher}
# 掌上英雄联盟app包名
package:com.tencent.qt.qtl
# 掌上英雄联盟app的activity
  mCurrentFocus=Window{e6b1542 u0 com.tencent.qt.qtl/com.tencent.zone.main.LauncherActivity}
#今日头条app的包名
package:com.ss.android.article.news
# 今日头条app的activity
C:\Users\xxxx>adb shell "dumpsys window | grep mCurrentFocus"
  mCurrentFocus=Window{12a72a4 u0 com.ss.android.article.news/com.ss.android.article.news.activity.MainActivity}
# 根据包名可获取对应的activity
adb shell dumpsys package XXX 
# 查看app的基本信息,权限信息等
C:\Users\xxxx>adb shell dumpsys package com.tencent.qt.qtl
# 获取系统版本:
adb shell getprop ro.build.version.release

参考:
https://www.cnblogs.com/zhuminghui/p/10457674.html

UICrawler启动执行配置

# 执行UICrawler
D:\BaiduNetdiskDownload>java -jar UICrawler-2.3.jar -f config.yml -u ENU7N15A30004129
# 模拟器
D:\BaiduNetdiskDownload>java -jar UICrawler-2.3.jar -f config.yml -u 127.0.0.1:62001
# 传参-m 即可运行配置中的 monkey 相关设置
java -jar UICrawler-2.0.jar -f config.yml -u yourSerialNo -m

在这里插入图片描述

如何停止

q

命令参数

cmd@TR:~/UICrawler$ java -jar UICrawler-2.0.jar -h

16:41:03.088 [main] INFO  Crawler -     -h  Print this usage information

    -a  Android package's main activity

    -b  iOS bundle id

    -c  Maximum click count

    -d  Maximum crawler UI depth

    -f  Yaml config  file

    -i  ignore crash   # 忽略奔溃

    -l  loop count #设置循环次数,一次遍历时间结束后,会再次进行count次遍历时间

    -m  run monkey  #运行配置中的 monkey 相关设置

    -p  Android package name # 不退出app,若退出会再次重新启动

    -r  Crawler running time # 设置遍历时间

    -t  Appium port  # appium端口号,默认是4723

    -u  Device serial   # 手机设备udid

    -v  Version

    -w  WDA port for ios

报错

# appium启动服务后,日志提示如下:
[HTTP] No route found. Setting content type to 'text/plain'
[HTTP] <-- GET /json 404 1 ms - 47

执行结果

在这里插入图片描述

在这里插入图片描述在这里插入图片描述

在这里插入图片描述

说明

UICrawler存放位置

可随意存放,使用时,进入所在目录,cmd进入,去执行即可
执行完成,在此目录下会生成对应的报告文件

不建议用需要登录的app操作演示

config.yml更改配置

在这里插入图片描述
在这里插入图片描述

时间

在这里插入图片描述

UICrawler.jar更新

说明:使用开发优化后的jar包,去执行自动化脚本

运行UICrawler Monkey

#设置事件百分比 各事件百分比之和为100
MONKEY:
  #运行时间,以分钟计
  MONKEY_RUNNING_TIME:  180
  #以下各项值总和需为100
  #滑动事件百分比
  SWIPE_RATIO: 0
  #点击事件百分比
  CLICK_RATIO: 100
  #点击MONKEY_SPECIAL_POINT_LIST中的坐标 主要用于触发"返回"功能
  CLICK_SPECIAL_POINT_RATIO: 0
  #重启APP事件百分比
  RESTART_APP_RATIO: 0
  #对应 LONG_PRESS_LIST:特殊坐标长按(10秒)
  LONG_PRESS_RATIO: 0
  #Android Only按Home键事件百分比
  HOME_KEY_RATIO: 0

#Gesture https://www.jianshu.com/p/095e81f21e07
  DOUBLE_TAP_RATIO: 0
  PINCH_RATIO: 0
  UNPINCH_RATIO: 0

MONKEY_LIST:
  #提高测试效率,点击以下点(x,y)时会触发"后退"操作,避免在一个页面停留时间太久
  MONKEY_SPECIAL_POINT_LIST:
  - '70,140'

  #根据以下坐标长按10秒
  LONG_PRESS_LIST:
  - '980,560'

  #设置不点击的区域, radius用来设置以下列坐标为圆心,不想点击的半径区域
  #MONKEY_BLACKLIST_POINT_LIST:
  #- 'radius,10'
  #- '0,0'

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

米雪唲2

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值