adb + monkey简单使用

adb + monkey

(仅作为个人笔记,如有雷同,请联系删除。。)


adb 工具即 Android Debug Bridge(安卓调试桥) tools。是android sdk里的一个工具,可以直接操作管理android模拟器或者真实的andriod设备。

  1. adb connect 连接设备

  2. adb disconnect 断开连接

  3. adb devices查看连接设备

  4. adb start-server:开启服务

  5. adb kill-server:关闭服务

  6. adb install apk路径安装软件

  7. adb uninstall 包名:卸载软件

  8. adb shell am start -n 包名/类名:打开app

  9. adb d badding 文件名:拆包

  10. adb install -r apk路径:覆盖安装,-r 代表如果apk已安装,重新安装apk并保留数据和缓存文件

  11. adb shell pm list packages列出手机装的所有app的包名

  12. adb shell pm list packages -s:列出系统应用(系统自带的软件包)

  13. adb shell pm list packages -3:列出第三方应用(用户安装的)

  14. adb push 电脑路径 移动端路径将电脑文件传输到移动端

  15. adb pull 移动端路径 电脑路径将移动端文件传输到电脑

  16. adb shell screencap -p 截图文件路径:截屏

  17. adb shell am start -W -n 包名/类名查看启动时间

     i. ThisTime:最后一个启动的Activity的启动耗时
     ii. TotalTime:自己的所有Activity的启动耗时
     iii. WaitTime:ActivityManagerService启动App的Activity时的总时间(包括当前Activity的onPause()和自己Activity的启动)

  18. adb shell dumpsys cpuinfoadb shell top:查看手机CPU情况

  19. adb shell dumpsys meminfo +包名:查看应用内存使用情况

  20. adb shell dumpsys diskstats:显示磁盘使用信息

  21. adb shell pm clear [packagename]:清除应用缓存信息

  22. adb shell dumpsys battery:查看电池状态

  23. adb shell dumpsys batteryproperties:查看电池信息,显示当前电池关键属性值

  24. adb logcat [选项] [过滤项]:查看手机日志

    1. Android的日志级别
       V —> Verbose(最低,输出得最多)
       D —> Debug
       I —> Info
       W —> Warning
       E —> Error
       F —> Fatal
       S —> Silent(最高)
    2. 过滤指定等级日志:按某级别过滤日志则会将该级别及以上的日志输出。eg:adb logcat *:W
    3. adb logcat -t 5:输出最近5行的数据

monkey主要用于安卓稳定性测试,模拟用户触摸屏幕、滑动Trackball、按键等操作来对设备上的程序进行压力测试,主要目的就是为了测试app是否会crash。

命令monkey -p 包名 --throttle 时间间隔 百分比事件 事件占比 -v -s seed值 操作次数

  1. -p指定要测试的包,若不指定则在整个系统中执行
     i. 指定一个包执行10次:monkey -p 包名 10
     ii. 指定多个包执行10次:monkey -p 包名 -p 包名 10

  2. -v:指定反馈日志的详细程度级别,有3个级别:
     i. -v:默认级别,精简的日志,仅提供启动、测试完成和最终结果等少量信息。eg:monkey -p 包名 -v 10
     ii. -v -v:提供较为详细的日志,包括每个发送到Activity的事件信息。eg:monkey -p 包名 -v -v 10
     iii. -v -v -v:提供最详细的日志,包括了测试中选中/未选中的Activity信息。eg:monkey -p 包名 -v -v -v 10

  3. -s:指定伪随机数生成器的seed值,即seed种子值monkey -p 包名 –s seed值 执行次数
    注:如果seed值相同,则两次Monkey测试所产生的事件序列也相同的

    eg:
      test1:monkey -p com.qq –s 777 100
      test2:monkey -p com.qq –s 777 100,
    两次测试的效果是相同的:模拟的用户操作序列是一样的。相当于test2重复执行test1的随机操作
    理解:test1指定seed值,test2使用seed值。

  4. –throttle:指定每次操作的时间间隔

    eg:
    monkey -p 包名 -v-v --pct-touch 50 --pct-trackball 50 --throttle 100 1000,每个操作间隔100ms,共执行1000次 ,其中点击事件占比50%,轨迹事件占比50%

  5. 百分比事件
     i. –pct-touch触摸、点击事件
     ii. –pct-motion动作事件(动作事件由屏幕上某处的一个down事件、一系列的伪随机事件和一个up事件组成)
     iii. –pct-trackball轨迹事件(轨迹事件由一个或几个随机的移动组成,有时还伴随有点击)
     iv. --pct-nav:“基本”导航事件(导航事件由来自方向输入设备的up/down/left/right组成)
     v. --pct-majornav:“主要”导航事件(这些导航事件通常引发图形界面中的动作,如:5-way键盘的中间按键、回退按键、菜单按键)
     vi. –pct-syskeys“系统”按键事件(这些按键通常被保留,由系统使用,如Home、Back、Start Call、End Call及音量控制键)
     vii. --pct-appswitch:启动Activity。在随机间隔里,Monkey将执行一个startActivity()调用,作为最大程度覆盖包中全部Activity的一种方法
     viii. –pct-flip“键盘翻转”事件
     ix. –pct-anyevent其它类型事件。包罗了所有其它类型的事件,如:按键、其它不常用的设备按钮、等等

  6. 其他参数选项
     i. --ignore-crashes:忽略崩溃
     ii. --ignore-timeouts:忽略超时
     iii. --ignore-security-exceptions:忽略许可错误
     iv. --ignore-native-crashes:忽略本地崩溃
     v. --monitor-native-crashes:监控本地崩溃

你可能感兴趣的:(测试开发,android,android,studio,android-studio)