导航:首页 > 操作系统 > 什么是安卓中命令行的工具

什么是安卓中命令行的工具

发布时间:2024-01-24 01:43:38

android测试monkey什么意思

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

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

1、正常。

2、Crash :程序崩溃。

3、ANR:程序无响应。

第一步:搭建环境:主要是安装和搭建java和sdk环境,说白了,对我们安卓开发来说,只要搭建好了Android开发环境,Monkey测试环境基本就是OK的了。

第二步:准备好要测试的项目,比如可以是一个.apk安装包,也可以是已经安装到手机上的软件 。

第三步:连接上Android测试设备,可以是模拟器,当然也可以是手机,通过adb 命令对测试项目进行Monkey测试。

当然这一测试也是存在着优缺点的。

优点:功能强大, 主要用于压力和稳定性测试。缺点:本身不提供截屏功能,本身无法完成录制、回放的功能(不过都可以借用其他的开源工具来实现Monkey的截屏和录制等功能)。

㈡ adb命令和monkey总结

移动动测测试试基基础础

adb常常用用命命令令总总结结

1. adb / adb -help 使用帮助

2. adb devices 查看连接到电脑的设备

3. adb install example.apk 安装程序

4. adb -s emulator-5554 install example.apk 安装程序到指定的设备上(模拟器)

5. adb pull <remote> <local> 将设备上文件保存到电脑上

6. adb push <local> <remote> 将本地的文件上传到设备上

7. adb start-server 重启adb服务

8. adb kill-server 杀掉adb服务

9. adb shell 进入命令行交互模式,进入之后可以像在linux输入shell命令一样来操作手机设备(android本来就是基于linux的)

10. adb logcat <信息显示优先级参数> 显示日志信息 优先级从低到高顺序排

11.adb shell cat /proc/cpuinfo 查看手机CPU,

12.adb shell ps 查看进程信息

Monkey命令实战

1.Monkey是什么?

Monkey是Android中的一个命令行工具,可以运行在模拟器或者实际设备中

向系统发送伪随机的用户事件流(按键输入、触摸屏输入、手势输入等)

实现对正在开发的应用程序进行测试

Monkey测试之一种为了测试软件的稳定性、健壮性的快速有效的方式

2.Monkey的特征

测试对象仅为应用程序包,有一定的局限性(不能对源码进行测试)

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

可以对MonkeyTest对象,事件数量,类型、频率等进行设置

3. Monkey使用

adb shell monkey [options]

adb shell monkey -p 包名 -v 500

-p 指定测试程序包名

-v 显示默认程度的信息

500 事件数设定为500

例如: adb shell monkey -p com.android.calculator2 -v 500

4. Monkey命命令令结结果果分分析析

1. 找monkey里面那个出错的地方

2. 查看monkey里面出错前的一些事件动作,并手动执行该动作

3. 若以上步骤还不能找出,使用之前执行的monkey命令再执行一遍,seed值要一样(seed值一样,发送的伪随机事件流也一样)

4. 注意第一个switch以及其他信息

seed值和,不同event类型比例

5.Monkey测试的目的

1. ANR问题:在日志中搜索“ANR”

2. 崩溃的问题:在日志中搜索“Exception”

3. ANR:Application Not Responding,在Android中,如果应该程序有一段时间响应不够灵敏,系统会向用户显示一个对话框,这个对话框称作应

用程序无响应对话框。用户可以选择“等待”而让程序继续运行,也可以选择“强制关闭”应用。 好的程序应该能流畅运行,不能出现ANR问题

Monkey命令进阶

1.运行时机

产品功能稳定之后进行

2. monkey更更复复杂杂的的命命令令

adb shell monkey -p packagename -v -v -- throttle 600 88

-v :代表整个Monkey运行的次数,多个 -v 可以定制Monkey报告的等级

--throttle 600 : 每个操作都间隔时间600ms

88 :执行的事件数

adb shell monkey -p packagename -v -v --pct-touch 50 --pct-trackball 30 --throttle 600 88

adb shell monkey -p packagename -v -v --pct-touch 50 --pct-trackball 30 -s 1234 --throttle 600 88

--pct-touch :设置在整个过程中点击操作所占的百分比

--pct-trackball: 设置滚轮在所用操作中的百分比

--ignore-crashes:崩溃之后继续测试,重新启动程序

--ignore-timeouts:遇到超时,也继续执行

-v:

命令行的每一个-v将增加反馈信息的级别

Level 0(缺省值)除启动提示、测试完成和最终结果之外,提供较少信息

Level 1提供较为详细的测试信息,如逐个发送到Activity的事件

Level 2提供更加详细的设置信息,如测试中被选中的或未被选中的Activity

更多monkey命令:http://xqtesting.blog.51cto.com/4626073/1430654

实测命令(经常用到的,可以参考):

adb shell monkey -p com.xx.xxx(包名)--throttle 500 --ignore-crashes --igonre-timeouts --ignore-security-exceptions --igonre-native-crashes --

monitor-native-crashes -v -v -v 1000000 >> D:\monkeyScreenLog.log

说明:忽略crashes、timeout等是为了出问题是monkey继续运行下去,希望能抓取更多的出错信息

3.可可以以练练习习使使用用的的apk包名

com.android.calculator2

com.android.browser

com.android.music

com.android.email

com.android.contacts

monkey也可以进行压力测试。

可靠性测试

      稳定性测试:长时间使用软件不会出现无响应

                  monkey:安卓系统常用稳定性和压力测试工具

                  语法:monkey -p 包名  --throttle 数值(间隔时间,单位ms) -v  数值(操作次数)

                      monkey -p com.emicro.emicrophone --throttle 500 -v 300

                    百分比事件

                      0:点击事件  参数--pct-touch

                      1:滑动事件      --pct-motion

                      2:缩放事件      --pct-pinchzoom

                      3:轨迹球事件    --pct-trackball

                      4:屏幕旋转      --pct-rotation

                      5:基本导航事件  --pct-nav

                      6:主要导航事件    --pct-majornav

                      7:系统按键事件    --pct-syskeys

                      8:activity启动事件  --pct-appswitch

                      9:键盘唤出隐藏事件  --pct-flip

                      10:其他事件          --pct-anyevent

      异常测试  :断电,断网,异常退出。。。

adb 调试桥

    adb devices  检查设备是否连接

    adb install apk文件路径文件名

    adb uninstall 包名  卸载

    aapt d badging  apk文件路径文件名

    adb shell    进入安卓系统

㈢ ADB工作原理

Android 调试桥 (adb) 是一种功能多样的命令行工具。它可以让你与设备进行通信,adb 命令可用于执行各种设备操作(例如安装和调试应用),并提供对 Unix shell(可用来在设备上运行各种命令)的访问权限,它是一种C/S架构的程序,包括以下三个组件:

客户端: 主要用于发送命令,adb client在开发机器上运行,你可以通过发出 adb 命令从命令行终端调用客户端,它主要的工作是:解析像:push、shell、install等命令的参数,做必要预处理,然后转移为指令或数据,发送给adb server。

守护程序 (adbd): 是运行在Android设备(真机/模拟器)后台的一个进程,它是由init进程启动的,并且系统一开机就已经启动,它的主要作用是处理来自 adb server的命令行请求,然后获取对应Android设备的信息,再将结果返回给adb server。

服务器 (adb server): 是运行在PC上的一个后台进程,它有两个作用:

当启动某个 adb 客户端时,该客户端会先检查是否有 adb 服务器进程正在运行,如果没有,它会先启动服务器进程,服务器在启动后会与绑定和监听PC上的 TCP 端口 5037 ,并处理 adb 客户端发出的命令(所有 adb 客户端通信均通过与PC上端口 5037 建立TCP连接通信)如下图:

然后,adb server会与所有正在运行的设备建立连接,TCP连接方式下,它通过扫描 5555 到 5585 之间(该范围供前 16 个模拟器使用)的奇数号端口查找模拟器,服务器一旦发现 adb 守护程序 (adbd),便会与相应的端口建立连接,请注意,每个模拟器都使用一对按顺序排列的端口(用于控制台连接的偶数号端口和用于 adb 连接的奇数号端口)

通过查看端口,可以看到adb server已在 5037 端口监听 'LISTENING'

Client通过发送指令的方式,给到adb server端,adb server端进行判定,是否需要转发到adbd进行处理。

㈣ android压力测试工具有哪些,各有什么特点。有文档更好,兄弟我想研究下。

最近在Android程序测试过程中接触到了自动化测试方法,对其中的一些工具、方法和框架做了一些简单的整理,其中包括android测试框架、CTS、Monkey、Monkeyrunner其它test tool等等。因接触时间很短,很多地方有不足之处,希望能和大家多多交流和指点在这里简单对monkey做简单的介绍吧。

一、 什么是Monkey
Monkey是Android中的一个命令行工具,可以运行在模拟器里或实际设备中。它向系统发送伪随机的用户事件流(如按键输入、触摸屏输入、手势输入等),实现对正在开发的应用程序进行压力测试。Monkey测试是一种为了测试软件的稳定性、健壮性的快速有效的方法。

二、 Monkey的特征
1、测试的对象仅为应用程序包,有一定的局限性。
2、 Monky测试使用的事件流数据流是随机的,不能进行自定义。
3、可对MonkeyTest的对象,事件数量,类型,频率等进行设置。

三、Monkey的基本用法
基本语法如下:
$ adb shell monkey [options]
如果不指定options,Monkey将以无反馈模式启动,并把事件任意发送到安装在目标环境中的全部包。下面是一个更为典型的命令行示例,它启动指定的应用程序,并向其发送1500个伪随机事件:
$ adb shell monkey -p your.package.name -v 1500
$ monkey -p(package的意思) 指定文件名 -v(测试的次数和频率) number(次数)

四、Monkey测试的一个实例
通过这个实例,我们能理解Monkey测试的步骤以及如何知道哪些应用程序能够用Monkey进行测试。
Windows下(注:2—4步是为了查看我们可以测试哪些应用程序包,可省略):
1、 通过eclipse启动一个Android的emulator
2、 在命令行中输入:adb devices查看设备连接情况
C:\Documents and Settings\Administrator>adb devices
List of devices attached
emulator-5554 device
3、 在有设备连接的前提下,在命令行中输入:adb shell 进入shell界面
C:\Documents and Settings\Administrator>adb shell
#
4、 查看data/data文件夹下的应用程序包。注:我们能测试的应用程序包都在这个目录下面
C:\Documents and Settings\Administrator>adb shell
# ls data/data
ls data/data
com.google.android.btrouter
com.android.providers.telephony
com.android.mms
com.android.providers.downloads
com.android.deskclock
com.android.email
com.android.providers.media
com.android.settings
jp.co.omronsoft.openwnn
com.android.providers.userdictionary
com.android.quicksearchbox
com.android.protips
com.android.browser
com.android.launcher
com.android.term
com.android.speechrecorder
com.android.server.vpn
com.android.defcontainer
com.svox.pico
com.android.customlocale
com.android.development
com.android.soundrecorder
com.android.providers.drm
com.android.spare_parts
com.android.providers.downloads.ui
com.android.fallback
com.android.providers.applications
com.android.netspeed
com.android.wallpaper.livepicker
android.tts
com.android.htmlviewer
com.android.music
com.android.certinstaller
com.android.inputmethod.pinyin
com.android.providers.subscribedfeeds
com.android.inputmethod.latin
com.android.gallery
com.android.systemui
com.android.contacts
com.android.phone
com.android.sdksetup
com.android.calculator2
com.android.packageinstaller
com.android.camera
com.android.providers.settings
com.thestore.main
com.android.providers.contacts
5、 以com.android.camera作为对象进行MonkeyTest
#monkey -p com.android.camera -v 500
其中-p表示对象包 –v 表示事件数量
运行过程中,Emulator中的应用程序在不断地切换画面。
按照选定的不同级别的反馈信息,在Monkey中还可以看到其执行过程报告和生成的事件。
注:具体参数的设定可参考:
http://developer.android.com/guide/developing/tools/monkey.html

五、关于Monkey测试的停止条件
Monkey Test执行过程中在下列三种情况下会自动停止:
1、如果限定了Monkey运行在一个或几个特定的包上,那么它会监测试图转到其它包的操作,并对其进行阻止。
2、如果应用程序崩溃或接收到任何失控异常,Monkey将停止并报错。
3、如果应用程序产生了应用程序不响应(application not responding)的错误,Monkey将会停止并报错。
通过多次并且不同设定下的Monkey测试才算它是一个稳定性足够的程序。

阅读全文

与什么是安卓中命令行的工具相关的资料

热点内容
回车键失灵运行命令如何使用 浏览:982
电脑一键解压缩的软件 浏览:171
怎么关闭手机通讯录对外app 浏览:370
我的世界如何强行进入一个满人的服务器 浏览:653
什么app可以查询会考成绩 浏览:389
程序员能创造的价值 浏览:259
服务器上的redis是什么意思 浏览:379
软件产品经理与程序员 浏览:922
高中生程序员 浏览:892
ps处理pdf 浏览:723
服务器c1什么意思 浏览:222
哈尔滨手机什么app拍违章有奖励 浏览:478
盗贼用什么app最好 浏览:902
51单片机如何测量电导率 浏览:500
移动花卡怎么使用app流量 浏览:555
个税算法2021表格公式解读 浏览:175
怎么进入电脑板2b2t服务器 浏览:285
idea编译进度条 浏览:134
文件夹工具箱软件 浏览:688
最近为什么手机连不上索尼服务器 浏览:877