51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

查看: 2168|回复: 0
打印 上一主题 下一主题

[转贴] App压力测试——(实践)

[复制链接]
  • TA的每日心情
    无聊
    昨天 09:32
  • 签到天数: 399 天

    连续签到: 5 天

    [LV.9]测试副司令

    跳转到指定楼层
    1#
    发表于 2019-1-14 15:15:17 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
    一,环境准备

    1.安装Android SDK
    2.安装python (这个我就不再赘述了,相信大家都会)
    3.下载Android模拟器

    打开AVD manager.exe文件,开启的你模拟器。


    二,一个App的压测实践
    Step1:在手机“开发者选项”上,将USB调试选中。

    Step2:确认手机和电脑已经成功连接。
    1. adb devices
    复制代码

    在windows环境中,打开cmd命令框,打开手机模拟器,输入命令adb devices(我这里连接了两个模拟器,所以有两条记录)



    Step3:安装测试App
    1. adb install package.apk
    复制代码


    Step4:发送压力指令
    1. adb shell monkey 1000
    复制代码
    即:monkey帮助我们完成1000个指令,那这1000个指令到底是什么,我们不得而知,反正是随机的1000个指令,包括音量大小、截屏、滑屏、up、down操作……


    注意:我这里连接了两个模拟器 ,那到底我在操作哪个模拟器呢?这里我们需要用命令 -s+设备名 来区分,如果你只连接了一个设备,就直接用
    1. adb shell monkey 1000
    复制代码

    1. //activityResuming <app package>
    复制代码

    在一个App从前台调入后台,再从后台恢复到前台的过程,就会出现这一行信息。
    1. Events injected:1000
    复制代码

    我们完成1000个事件,这里显示1000,说明没有报错。


    如果我们想要对某一个特定的app进行压力测试的话怎么办呢?
    那就要指定这个App包名,那如何获取App包名呢?


    Step5:获取App包名

    命令:

    Windows:adb logcat|findstr START
    Linux:adb logcat|grep START


    说明:

    logcat是指:输出手机上所有的App执行过程中的log信息。
    grep START是指:对日志信息中包含有START标签日志进行输出。



    OK,那在以上图片中,我们找到START这个标签,START后面的就是我们需要的信息,比如:

    1. cmp=com.android.email/.activity.setup.AccountSetupBasics
    复制代码


    说明:斜线(/)前面的com.android.email就是App包名,斜线(/)后
    面.activity.setup.AccountSetupBasics就是Activity名。

    那比如我们要获取计算器的包名,这时候我们点击模拟器上的计算器,就会打印出一行log,如图:



    我们获取到计算器的包名是com.android.calculator2,接下来我们对计算器这个App进行压测。


    Step6:对计算器App进行压力测试(执行1000个事件)

    命令:adb shell monkey -p com.android.calculator2 1000


    大家试一下,看看效果,是不是没有再调起其他应用。




    本帖子中包含更多资源

    您需要 登录 才可以下载或查看,没有帐号?(注-册)加入51Testing

    x
    分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
    收藏收藏
    回复

    使用道具 举报

    本版积分规则

    关闭

    站长推荐上一条 /1 下一条

    小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

    GMT+8, 2024-4-20 04:52 , Processed in 0.065052 second(s), 24 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

    快速回复 返回顶部 返回列表