Android测试之Monkey初体验

简介: 什么是Monkey?Monkey是Android中自带的用来进行压力测试的一个命令行工具。用Monkey进行App压力测试的结果有三种正常Crash :程序崩溃ANR:程序无响应Monkey简单测试步骤1.手机与电脑进行USB连接,并在开发者选项中选中USB调试2.确认手机与电脑连接:打开cmd命令行或者使用Android Studio的朋友可以打开Terminal视图,输入adb devices查看已连接的设备。

什么是Monkey?

Monkey是Android中自带的用来进行压力测试的一个命令行工具。

用Monkey进行App压力测试的结果有三种

  1. 正常
  2. Crash :程序崩溃
  3. ANR:程序无响应

Monkey简单测试步骤

1.手机与电脑进行USB连接,并在开发者选项中选中USB调试

2.确认手机与电脑连接:打开cmd命令行或者使用Android Studio的朋友可以打开Terminal视图,输入adb devices查看已连接的设备。

img_11dd355dc2368b5aa76e38fc5c03ffb2.png

如果设备连接成功会显示

img_c69fa9034959f3ee0ca58f71458c7475.png

注意:如果输入命令显示adb 不是内部或外部命令,也不是可运行的程序或批处理文件的话,就需要配置环境变量

3.安装Apk到手机上

adb install package.apk

4.执行Monkey指令:

monkey 500
img_e3dafef99dfd08a9231eb26831543079.gif

img_7e1b98a32ce274a25efce759ddbe3edf.png

结果我们发现这样执行的结果是对手机上的所有APP随机进行操作的并没有对特定的APP进行操作,那么下一步我们就以计算器APP来演示下如何对于特定的APP进行测试。

1)获取手机计算器的包名:需要在adb shell模式下输入logcat | grep START,会显示出当前启动的APP的信息

img_26a14c119327b78d83aeb45761dfe892.png

2)划到最底部,然后打开手机的计算器应用

img_5ad0170e4218898df48cbea5983e34a2.gif

img_bb40c46b78d4f247fd8fbb1cbe4cc88d.png

在打印出的信息里我们可以查看到计算器的包名为com.android.calculator2

3)输入monkey -p com.android.calculator2 500(表示对计算器APP执行500次的随机事件)

img_0e116f9b636efea8162cd807523391d3.gif

我们会发现所有的操作都在计算器里执行的

补充

如果存在多个手机连接,输入adb shell会有如下提示。

img_18c89fa7c8091d413e77c306e5e97804.png

如果想进入某一个设备需要执行adb -s 设备名 shell

img_842fa515efc1c79fa8f7fc47870be383.png

个人博客:https://myml666.github.io

目录
相关文章
|
Linux Android开发
测试程序之提供ioctl函数应用操作GPIO适用于Linux/Android
测试程序之提供ioctl函数应用操作GPIO适用于Linux/Android
528 0
|
缓存 Java 测试技术
【01】噩梦终结flutter配安卓android鸿蒙harmonyOS 以及next调试环境配鸿蒙和ios真机调试环境-flutter项目安卓环境配置-gradle-agp-ndkVersion模拟器运行真机测试环境-本地环境搭建-如何快速搭建android本地运行环境-优雅草卓伊凡-很多人在这步就被难倒了
【01】噩梦终结flutter配安卓android鸿蒙harmonyOS 以及next调试环境配鸿蒙和ios真机调试环境-flutter项目安卓环境配置-gradle-agp-ndkVersion模拟器运行真机测试环境-本地环境搭建-如何快速搭建android本地运行环境-优雅草卓伊凡-很多人在这步就被难倒了
2102 3
【01】噩梦终结flutter配安卓android鸿蒙harmonyOS 以及next调试环境配鸿蒙和ios真机调试环境-flutter项目安卓环境配置-gradle-agp-ndkVersion模拟器运行真机测试环境-本地环境搭建-如何快速搭建android本地运行环境-优雅草卓伊凡-很多人在这步就被难倒了
|
Dart 前端开发 Android开发
【02】写一个注册页面以及配置打包选项打包安卓apk测试—开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草央千澈
【02】写一个注册页面以及配置打包选项打包安卓apk测试—开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草央千澈
633 1
【02】写一个注册页面以及配置打包选项打包安卓apk测试—开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草央千澈
|
Java 测试技术 Android开发
Android性能测试——发现和定位内存泄露和卡顿
本文详细介绍了Android应用性能测试中的内存泄漏与卡顿问题及其解决方案。首先,文章描述了使用MAT工具定位内存泄漏的具体步骤,并通过实例展示了如何分析Histogram图表和Dominator Tree。接着,针对卡顿问题,文章探讨了其产生原因,并提供了多种测试方法,包括GPU呈现模式分析、FPS Meter软件测试、绘制圆点计数法及Android Studio自带的GPU监控功能。最后,文章给出了排查卡顿问题的四个方向,帮助开发者优化应用性能。
1579 4
Android性能测试——发现和定位内存泄露和卡顿
|
测试技术 Shell Android开发
Android 性能测试初探 (六)
本节聊聊性能测试的最后一项- 流量,当然我所指的性能测试是针对大部分应用而言的,可能还有部分应用会关注网速、弱网之类的测试,但本系列文章都不去一一探讨了。
262 6
|
JavaScript 测试技术 Android开发
Android 性能测试初探 (四)
本文介绍了GPU在移动端性能测试中的重要性,并详细解释了过度绘制、帧率和帧方差的概念。针对GPU测试,文章列举了三项主要测试内容:界面过度绘制、屏幕滑动帧速率和平滑度。其中,过度绘制测试需遵循特定标准,而帧速率和平滑度测试则可通过软件或硬件方法实现。在软件测试中,使用Systrace插件和高速相机是两种常用手段。对于不同机型,帧率及帧方差的测试标准也需相应调整。
303 6
|
测试技术 Shell Android开发
Android 性能测试初探 (三)
本文承接《Android性能测试初探(二)》,深入探讨CPU与内存测试。介绍了移动端内存测试的重要性及其测试目标,并详细列举了不同状态下应用内存消耗情况的测试项目。此外,还提供了多种内存测试方法,包括使用`procrank`等工具的具体操作步骤。最后,文章也简要提及了CPU测试的相关内容,帮助读者更好地理解Android性能测试的关键要素。
243 6
|
测试技术 Shell 定位技术
Android 性能测试初探 (五)
聊聊大家不常关注的测试项- 功耗
294 4
|
算法 测试技术 Android开发
Android 性能测试初探 (二)
上回大体介绍了下在 android 端的性能测试项,现在我们就细节测试项做一些阐述(包括如何自己 DIY 测试)
254 5
|
测试技术 API Android开发
Android 性能测试初探 (一)
Android 性能测试,跟pc性能测试一样分为客户端及服务器,但在客户端上的性能测试分为 2 类: 一类为 rom 版本的性能测试;一类为应用的性能测试。
343 3