monkeyrunner(3)录制与回放脚本

本文介绍如何使用monkey_recorder.py和monkey_playback.py脚本来自动化录制和回放Android设备上的操作,实现对应用的自动化测试。通过简单的bat脚本启动录制过程,用户可以在后续操作中自由地执行各种动作,并将其录制为脚本文件。之后,通过monkey_playback.py脚本播放录制的脚本文件,以实现自动化测试或演示应用行为。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

查资料看了些例子,自己动手做个下~

网上资源

记录的monkey_recorder.py

from com.android.monkeyrunner import MonkeyRunner as mr  
from com.android.monkeyrunner.recorder import MonkeyRecorder as recorder  
  
device = mr.waitForConnection()  
recorder.start(device)

自己搞个bat处理:开启录制脚本

@echo off
echo 开始录制脚本
monkey runner D:\py_Script\monkey_recorder.py

开始后弹出工具窗口如下:


这下可以想怎么折腾这个软件都可以录下来,右侧保存做的一系列动作。

再来看回放用的脚本:monkey_playback.py

import sys

from com.android.monkeyrunner import MonkeyRunner

CMD_MAP = {

    'TOUCH': lambda dev, arg: dev.touch(**arg),

    'DRAG': lambda dev, arg: dev.drag(**arg),

    'PRESS': lambda dev, arg: dev.press(**arg),

    'TYPE': lambda dev, arg: dev.type(**arg),

    'WAIT': lambda dev, arg: MonkeyRunner.sleep(**arg)

    }

# Process a single file for the specified device.

def process_file(fp, device):

    for line in fp:

        (cmd, rest) = line.split('|')

        try:

            # Parse the pydict

            rest = eval(rest)

        except:

            print 'unable to parse options'

            continue

 

        if cmd not in CMD_MAP:

            print 'unknown command: ' + cmd

            continue

 

        CMD_MAP[cmd](device, rest)

def main():

    file = sys.argv[1]

    fp = open(file, 'r')

 

    device = MonkeyRunner.waitForConnection()

   

    process_file(fp, device)

    fp.close();

   

if __name__ == '__main__':

    main()


录完后播放自己的脚本:如“123”

monkeyrunner D:\py_Script\monkey_playback.py "D:\py_Script\record_script\123"


接下就观看视频哦~



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值