zoukankan      html  css  js  c++  java
  • android app压力测试(一)---monkey介绍及基本使用

    前言:

     很久之前,就听说了monkey;但是monkey是干什么用;如何使用;我们还是带着最简单的问题开始学习吧;

    ps:我的博文格式变化了,阅读了很多博文,发现这个样式阅读起来很有条理,我也参考一下下。。呵呵--

    【目录】

    一:Monkey简介

    二:Monkey的特性

    三:Monkey的基本命令参数说明

    四:Monkey使用实例

    一:Monkey简介

        说:monkey是一只调皮的猴子,在app中乱按、乱摸、乱跳;

             模拟用户触摸屏幕、滑动轨迹球、按键等操作;对模拟器或者手机上的软件进行压力测试

             检测软件的稳定性健壮性

      原理:向系统发送伪随机的用户事件流(按键输入、触摸输入、手势输入),对测试软件进行压力测试;

    二:Monkey的特性

    (1)测试的对象仅为应用程序包(apk包,)有一定的局限性;

    (2)Monkey测试使用的事件流、数据流是随机的,不能进行自定义;

    (3)可以对MonkeyTest的对象、事件数量、类型、频率等进行设置;

     虽然Monkey工具并不完善,但是足以应付应用程序的基本测试需要了;如果需要功能更强大的测试工具的话,使用Monkey的进化版本MonkeyRunner;

    三:Monkey的基本命令参数说明

        Monkey包括许多选项,大致分为四大类

        1:基本选项

            -help 打印帮助文档

           -v :指定打印信息的详细级别;一个-v增加一个级别。

                 -v       :Level 0,缺省值,仅提供启动提示,测试完成和最终结果等少量信息

                 -v -v    :Level 1,提供较为详细的日志,包括每个发送到的Activity的事件信息

                 -v -v -v:Level 2,最详细的日志,包括了测试中选中/未选中的Activity信息

     

     2:事件选项

     -s :伪随机数生成器的seed值。如果用相同的seed值再次运行Monkey,它将生成相同的事件序列;

    等等。。。

    3:约束选项

     -p:指定一个或者多个包 (指定多个包,使用多个-p,每个-p选项只能用于一个包)

    -c:指定一个或多个类别()

    4:调试选项

    --ignore-crashes:通常,当应用程序崩溃或者发生任何异常时,Monkey将停止运行。如果设置此选项,Monkey将继续向系统发生事件,直到计数完成

    --ignore-timeouts:通常,当应用程序发生任何超时错误(如“Application Not Responding”对话框)时,Monkey将停止运行。如果设置此选项,Monkey将继续向系统发生事件,直到计数完成

    等等。。

     

     四:Monkey使用实例

    (1)指定一个包:adb shell monkey -p package 1000

    (2)seed值:adb shell monkey -p package  -s 10 1000

    (3)日志级别:adb shell monkey -p package  -v -v 1000

    操作:

    1:下载一个apk文件,可以在豌豆荚下载;

       

    2:使用adb命令安装下载的apk文件(abd install + apk文件)

    3:执行monkey命令(这里我用的是其它的app)

     打印的日志太长,可以重定向到文件中;

    日志文件如下:

    本文学习的博文地址:

    http://www.cnblogs.com/findyou/p/3940671.html#Mon03

    http://blog.csdn.net/lfyx1357/article/details/7418133

  • 相关阅读:
    python 读csv文件时,在csv类型上执行类型转换
    python 读csv文件对列名进行合法性验证
    python 读csv数据 通过改变分隔符去掉引号
    python 写csv文件
    python 简单了解namedtuple
    python 读csv格式的文件
    python 序列化,反序列化
    PyQt5 笔记(05):信号/槽
    PyQt5 笔记(04):主窗口卡死问题
    PyQt5 笔记(03):弹出窗口大全
  • 原文地址:https://www.cnblogs.com/pangwanzi/p/6801327.html
Copyright © 2011-2022 走看看