• MonkeyRunner测试步骤


    目录

    一、MonkeyRunner简介

    二、安卓SDK的环境变量配置

    三、monkeyrunner测试

    四、设备连接测试

    五、问题及处理


    一、MonkeyRunner简介

    MonkeyRunner是一个测试工具,用于自动化测试Android应用程序。它提供了一个API(应用程序编程接口),允许测试开发人员编写基于Python语言的脚本,以执行各种Android设备和模拟器的任务。MonkeyRunner可以模拟用户交互(如点击、滑动和输入)和屏幕捕捉,以便进行验证和分析。 它通常与其他测试框架和工具(如JUnit和Robotium)一起使用,以实现全面的应用程序测试。

    二、安卓SDK的环境变量配置

    在配置安卓SDK的环境变量前,请确保已经下载并安装了安卓SDK,然后按照以下步骤进行配置:

    1. 打开“控制面板”并选择“系统和安全”。

    2. 选择“系统”,然后点击“高级系统设置”。

    3. 在“高级”选项卡下,点击“环境变量”。

    4. 在“用户变量”或“系统变量”下,找到名为“ANDROID_HOME”的变量。

    5. 如果没有找到“ANDROID_HOME”变量,则需要创建一个新的变量。在“用户变量”或“系统变量”下点击“新建”,输入“ANDROID_HOME”为变量名,并输入SDK的安装路径为变量值,如“D:\Android\SDK”。

    6. 在“Path”变量中添加SDK的bin目录路径,如“%ANDROID_HOME%\tools”、“%ANDROID_HOME%\platform-tools”、“%ANDROID_HOME%\emulator”。

    7. 点击“确定”保存配置。

    现在,您已经成功地配置了安卓SDK的环境变量。可以使用命令行或其他工具测试环境配置是否正确了。

    三、monkeyrunner测试

    将自己的安卓设备打开调试模式,USB连接至电脑,运行CMD,输入命令

    adb devices

    查看你的安卓设备的ID(ID后面写程序会调用),如下图所示:

    继续在这个命令提示框中输入

    monkeyrunner

    进入monkeyrunner的shell命令交互模式。如图:

    进入shell命令交互模式后,首要一件事就是导入monkeyrunner所要使用的模块。直接在shell命令下输入:

    from com.android.monkeyrunner import MonkeyRunner,MonkeyDevice

     回车

    2步完成就可以就行monkeyrunner的测试了。

    四、设备连接测试

    下面的一个例子是连接手机并且点击菜单按钮,之后截图保存(注:以下命令全部在CMD monkeyrunner环境下运行)

    第一:

    # 连接安卓设备,其中4d007e9a1b0050d1 是设备的ID 上面有提到通过abd devices 获得

    device = MonkeyRunner.waitForConnection(5,'4d007e9a1b0050d1')

    第二:

    #安装apk文件到这个设备

    device.installPackage('E:\Education - 136_8080.apk')

    安装成功以后会返回true

    第三:

    1. # sets a variable with the package's internal name(设置包名)
    2. package = 'com.incito.android.education'

    第四:

    1. # sets a variable with the name of an Activity in the package(设置activity)
    2. activity = 'com.incito.android.education.MainActivity'

    第五:

    1. # sets the name of the component to start(设置运行组件)
    2. runComponent = package + '/' + activity

    第六:

    1. # Runs the component(运行此组件)
    2. device.startActivity(component=runComponent)

    第七:

    1. # Presses the Menu button(按下菜单按钮,此时真机的菜单按钮会被按下)
    2. device.press('KEYCODE_MENU', MonkeyDevice.DOWN_AND_UP)

    第八:

    1. # Takes a screenshot(触发截图)
    2. result = device.takeSnapshot()

    第九:

    1. # Writes the screenshot to a file(保存截图)
    2. result.writeToFile('E:\Snapshot\edu.png','png')

    截图成功会返回true,如图

    注意保存截图的文件夹要变成可以状态才能截图成功不然会报异常:只读去掉 

    截图成果:

    图:

    所有的语句可以写在一个python文件里面然后用命令

    monkeyrunner test.py

    五、问题及处理

    在使用MonkeyRunner连接设备进行测试时,常遇到以下一些问题:

    1、设备无法被识别

    解决方法:

    • 确保ADB驱动已经安装,并且在PATH环境变量中配置正确
    • 重新插拔设备,或尝试更换USB端口
    • 在设备上开启USB调试模式

    2、MonkeyRunner脚本无法运行 

    解决方法:

    • 检查脚本语法是否正确
    • 确保使用正确的API和方法
    • 确保设备连接正常

    3、设备屏幕截图失败 

    解决方法:

    • 确保USB调试模式已经开启
    • 确保MonkeyRunner脚本和设备使用的是同一个adb组件版本
    • 禁用Windows的UAC功能,并以管理员身份运行MonkeyRunner

    4、触摸事件无法被识别或实现 

    解决方法:

    • 确保USB调试模式已经开启
    • 确保设备已经被正确识别
    • 确保使用正确的坐标系

    以上为MonkeyRunner连接设备进行测试时常见的问题及其解决方法,希望能对您有所启发。

  • 相关阅读:
    Apollo与TypeScript:强大类型检查在前端开发中的应用
    Linux symfonos
    计算机网络两位伟人
    温故而知新——vue常用语法(一)
    Maven项目构建工具
    主机dbeaver访问gitlab容器中的pg
    Unity中Shader实现模板测试Stencil
    供应点击试剂DBCO-S-S-NHS ester,DBCO-S-S-SE,CAS:1435934-53-4
    easyExcel合并单元格导出
    图像处理入门一
  • 原文地址:https://blog.csdn.net/LYX_WIN/article/details/133066562