zoukankan      html  css  js  c++  java
  • app测试2--monkey稳定性测试

    一、monkey基础

    1、为什么要进行monkey测试

    monkey测试是为了测试稳定性和健壮性

    crash:崩溃、闪退

    ANR机制--Application Not Responding:在主线程中进行了耗时的操作

    主线程:负责UI相关,子线程:负责具体事务

    耗时操作有:在主线程中请求网络操作、数据库的查询、

    2、monkey简介

    是android中附带的一个工具

    它向系统发送伪随机的用户事件流(如按键输入、触摸屏输入、手势输入等),实现对应用程序进行稳定性和健壮性测试

    3、monkey工作原理

    monkey运行的时候,生成伪随机事件流,并把他们发给系统,同时monkey还对测试中的系统进行监测,并进行特殊处理

    如果应用程序崩溃或接收到任何失控异常,monkey将停止并报错

    如果应用程序产生了应用程序不响应的错误,monkey将会停止并报错

    按照选定的不同级别的反馈信息,在monkey中还可以看到其执行过程报告和生成的事件

    二、monkey的使用

    1、开始-运行-cmd

    usb连接手机,输入adb  shell  monkey 命令

    adb monkey shell -p com.tencent.mm -v  500

    2、日志的获取

    为了方便分析问题,可以将日志信息重定向到文件中

    格式:monkey -p  com.tencent.mm -v 1000 >1.log   --一个>是覆盖

               monkey -p  com.tencent.mm -v 1000 >>1.log  --两个>>是追加

    adb shell

    monkey   -p  com.tencent.mm -v 1000 >d:/1.txt  --不正确,因为adb shell 后进入了手机,手机没有d盘,正确的指令是:

    adb shell  monkey   -p  com.tencent.mm -v 1000 >d:/1.txt

    如果进行monkey测试时,遇到anr或crash的情况,在抓取log的同时需要提供traces.txt(在/data/anr/下)

    adb  shell cd /data/anr

    ls

    monkey命令行参数 :

    -p 

    monkey -p com.tencent.mm -p  com.aotuyidongzhifa.cn  -v  100

    -V -VV  -VVV  

    -s 用于指定伪随机事件生成器的seed值,如果seed相同,则两次monkey测试所产生的事件序列也是相同的

    -throttle<毫秒>用于指定用户操作间的延迟,单位是毫秒

    --ignore -crashes 应用程序即使发生崩溃,也会运行直到计数完成

    adb shell monkey -p  com.tencent.mm  --ignore -crashes -v 500

    --ignore - timeouts 应用程序即使发生ANR错误时,monkey依然会发送事件,直到事件计数完成

    adb shell monkey  -p com.tencent.mm  --ignore -timeouts 

    adb shell  -> cd system/bin  ->ls 可以看到很多linux命令,包括

    adb shell monkey  -p  cn.com.pyc  200

    adb  shell monkey -p cn.com.pyc -v 500

    adb shell monkey -p cn.com.pyc  -s  12345  -v 500  >e:1.txt

    --打开monkey测试的日志文件,搜索error、exception、crash、anr

    adb  shell monkey -p cn.com.pyc  -v  -s 1234567  --throttle  300 200 >e:/1.txt

    --如果想让多一点触摸事件

    adb  shell monkey  -p cn.com.pyc -v -s  11709 --throttle 300  --pct-touch 50 200 >e:/1.txt

    --如果测试的过程中出现crash异常,提供monkey日志的同时还要提供monkey指令,还要附上响应的crash截图

    --如果测试过程中出现anr异常,需要另外提供traces文件   adb shell->cd data/anr ->ls ->traces.txt

  • 相关阅读:
    iOS开发-消息初认识
    小程序开发相关网址
    201703-4 地铁修建
    CCF 201703-3 Markdown
    UVALive 4998 Simple Encryption
    CCF 201609-4 交通规划
    CCF 201609-3 炉石传说
    UVALive 4270 Discrete Square Roots
    CCF 201604-2 俄罗斯方块
    codeforces 710E Generate a String
  • 原文地址:https://www.cnblogs.com/runoob/p/9566500.html
Copyright © 2011-2022 走看看