Monkey常用命令

#夜神模拟器打开开发者模式步骤:
#设置--》关于平板电脑--》狂点系统版本号--》返回设置,进入开发者选项
#--》勾选USB调试

#adb指令 检查当前连接设备
adb devices

#夜神模拟器连接设备
adb connect 127.0.0.1:62001

#切换到Android的Linux系统,输入exit退出系统
adb shell

#启动adb服务
adb start-server

#关闭adb服务
adb kill-server

#查找当前系统中所有的安装包以及路径
adb shell pm list package -f 

#查找当前系统中包含该字段的软件包
adb shell pm list package -f 搜索的字段

#先运行想要查找的软件,再执行指令,可以返回当前运行的软件包名以及事件
adb shell dumpsys window w | findstr name=

#其他用法:
adb shell dumpsys window | findstr mCurrentFocus
adb shell dumpsys activity | grep mFocusedActivity

#将当前系统运行的activity的日志导入到本地,通过文本搜索,查找
adb shell dumpsys activity > E:\本地路径\namelog.txt

#包名:com.wandoujia.phoenix2
adb shell monkey -p packagename -v 100 > E:\本地路径\namelog.log

#monkey的基本指令
adb shell monkey -p com.wandoujia.phoenix2 -v 100

seed=1573762270466

#安装
adb -s devicename install packagename(.apk包名)
adb -s 127.0.0.1:62001 install C:\Users\THINK\Desktop\App\jisuanqi_370.apk

#-r 覆盖安装
adb -s devicename install -r packagename

#卸载
adb -s 127.0.0.1:62001 uninstall com.wandoujia.phoenix2(已经安装好的package名)

#从电脑推送信息到手机
adb push 本地路径\wandoujia.apk   /data/local/tmp/wandoujia.apk

#静默安装
adb shell pm install -f 远程路径/wandoujia.apk

#从手机导入信息到电脑
Adb pull 远程路径/Android_packagename  D:\本地路径(当前路径:.)

#-p  指定一个或多个包,多个用多个-p指定报名
#-v  用于指定反馈信息详细程度级别,3个级别:分别加一个-v,两个-v,三个-v
#-s  随机种子数,用于指定伪随机数生成器的seed值,如果seed相同,则两次Monkey测试所产生的事件序列也相同的。
#--throttle   事件之间的延迟事件  --真实环境的模拟
#例子:让monkey持续10小时运行(稳定性--长时间运行软件)  --1万个随机事件间隔为3.6秒换算成毫秒--》3600ms
adb shell monkey -p com.miui.calculator -v -v -s 201911010001 --throttle 3600 10 > d:\20191101_mi02.log

Android基本事件百分比(11个事件的总和是100%)
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 shell monkey -p com.miui.calculator -v -v  --throttle 1600 --pct-touch 100 10 > d:\20191101_mi03.log

adb shell monkey -p com.miui.calculator -v -v  --throttle 1600 --pct-touch 50 --pct-motion 50 10 > d:\20191101_mi03.log

--ignore-crashes 忽略崩溃crash
--ignore-timeouts   anr 空指针
--ignore-security-exceptions 忽略安全异常
--ignore-native-crashes  忽略本地异常崩溃
--kill-process-after-error(monkey异常停止,自动继续)
--monitor-native-crashes(监视android系统的本地代码的崩溃事件)

adb shell monkey -p com.miui.calculator -v -v  --throttle 1600 --pct-touch 50 --pct-motion 50 --ignore-crashes --ignore-timeouts --ignore-security-exceptions --ignore-native-crashes 300 > d:\20191101_mi03.log

#冷启动语法:(热启动也是同一个指令,但是不关闭应用,挂在后台)
adb shell am start -W  [packageName]/[packageName.MainActivity]

#每次执行都是冷启动
adb shell am start -W -S [packageName]/[packageName.MainActivity]
package/activity:
com.miui.calculator/com.miui.calculator.cal.CalculatorActivity

#冷启动
adb shell am start -W com.miui.calculator/com.miui.calculator.cal.CalculatorActivity
adb shell am start -W -S com.miui.calculator/com.miui.calculator.cal.CalculatorActivity

#冷启动的停止
adb shell am force-stop com.miui.calculator

#热启动的停止 ---3代表的是手机上的back返回键
adb shell input keyevent 3

#APP性能监控:
#查看CPU信息
adb shell dumpsys cpuinfo 
adb shell dumpsys cpuinfo | findstr com.miui.calculator

#动态查看CPU占用最高的5个进程
adb shell top -m 5

#查看内存信息
adb shell dumpsys meminfo 包名或pid

#查看流量信息
#获取pid
db shell ps | grep(findstr) package  
11983  --指定的包运行的进程id
adb shell
cat /proc/11983/net/dev
#关注的是:Receive+Transmit=总的流量

#获取电量命令:
adb shell dumpsys battery

#切换非充电状态 
命令:adb shell dumpsys battery set status 1
#只要非2就可以了,因为2是代表充电状态

class App(object):

    def __init__(self):
        self.content=''   # 指令打印出来的内容
        self.startTime = 0
        
    def LaunchApp(self):
        cmd = '启动APP的指令:包名/activity'
        self.content=os.popen(cmd)
        
    def StopApp(self):
        cmd = '冷停止APP的指令:包名'
        os.popen(cmd)
        
    def GetTime(self):
        for line in self.content.readlines():
            print(line)  #打印遍历的启动时间
            if "ThisTime" in line:
                self.startTime = line.split(":")[1]
        #line.split(":")--[('ThisTime','1025')]
                break
        return  self.startTime
        
class Controller(object):
    



























 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值