`

安卓自动化测试工具MonkeyRunner之使用ID

 
阅读更多

把前段时间的研究成果记录一下。主要是通过调用应用软件的ID进行操作软件,此操作需要用到以下类和工具:

  1、安卓自有目录\tools\hierarchyviewer.bat工具可以用来查看应用程序的ID。

  操作hierarchyviewer.bat工具步骤:

  (1)、启动安卓模拟器,打开需要查看ID的软件界面。此处以google搜索界面为例。然后双击打开hierarchyviewer.bat,显示搜索界面的activity,即下图左侧被选中的项,表示搜索界面的完整包名。



  

  (2)点击Load View Hierarchy按钮,展现该搜索界面的层级图。选中指定的控件,查看ID名称。



 

  在属性显示区域可以看到各个控件所处的坐标位置,以及可以查看模拟器上任务栏的高度,这些信息可以用于坐标计算中。

  2、通过EasyMonkeyDevice类和By类来调用控件ID。

  一些常用控件的写法如下:

  (1)输入框的ID写法:

  easy_device.type(By.id('id/name_text),'zhangsan')

  (2)复选框/单选/按钮的ID写法:

  easy_device.touch(By.id('id/login_button'),MonkeyDevice.DOWN_AND_UP)

  (3)当两个ID名称相同时,可以使用层级进行定位

  easy_device.touch(By.id('id/parent_button'),MonkeyDevice.DOWN_AND_UP,By.id('id/current_button'),MonkeyDevice.DOWN_AND_UP)

  通过ID进行计算器操作示例calculator.py:

from com.android.monkeyrunner import MonkeyRunner,MonkeyDevice
from com.android.monkeyrunner.easy import EasyMonkeyDevice
from com.android.monkeyrunner.easy import By
from com.android.chimpchat.hierarchyviewer import HierarchyViewer
from com.android.hierarchyviewerlib.device import ViewNode
device = MonkeyRunner.waitForConnection()
package = 'com.android.calculator2'
activity = 'com.android.calculator2.Calculator'
runComponent = package + '/' + activity
device.startActivity(component=runComponent)
MonkeyRunner.sleep(3.0)
easy_device = EasyMonkeyDevice(device) #init easymonkeydevice object must start activity at first.Because the init method
will getHierarchyViewer();
easy_device.touch(By.id('id/digit7'),MonkeyDevice.DOWN_AND_UP)
easy_device.touch(By.id('id/mul'),MonkeyDevice.DOWN_AND_UP)
easy_device.touch(By.id('id/digit8'),MonkeyDevice.DOWN_AND_UP)
easy_device.touch(By.id('id/equal'),MonkeyDevice.DOWN_AND_UP)
MonkeyRunner.sleep(1.0)
pic = device.takeSnapshot()
pic.writeToFile('D:\\monkeyrunner\\result.png','png')
print 'test finished!'

 

  3、运行文件模拟计算7*8=56,生成result.png。monkeyrunner calculator.py



 

  用ID进行参数差不多都是这个思路。但是对于列表、或者弹出框则无法直接通过点击ID操作成功,需要计算ID的坐标。

  • 大小: 75.8 KB
  • 大小: 10.8 KB
  • 大小: 83.4 KB
分享到:
评论

相关推荐

    [android]android自动化测试十三之monkeyRunner自动化框架

    【Android自动化测试十三之MonkeyRunner自动化框架】 MonkeyRunner是Android SDK提供的一种强大的自动化测试工具,它允许开发者通过编写Python脚本来实现对Android设备或模拟器的控制,进行UI级别的自动化测试。...

    monkey、monkeyrunner测试工具

    Monkey是Android系统提供的一种自动化压力测试工具,它通过向设备或模拟器发送伪随机的用户事件流,如触摸屏点击、按键、滚动等,来检测应用程序的稳定性和健壮性。这些事件是由系统自动生成的,无法进行自定义,...

    基于Monkeyrunner的安卓自动化工具&源代码

    基于Monkeyrunner的安卓自动化测试框架....网上关于安卓自动化测试的工具和文章少的可怜,而且大部分工具非常坑爹,一些已经成型的工具现在居然也不支持通过ID进行操作…特分享此工具,内含完整源代码可供学习.

    Android 自动化测试框架

    本文将详细介绍几个常用的Android自动化测试框架,包括Monkey、MonkeyRunner、UIAutomator、Robotium和Appium。 1. **Monkey** Monkey是Android SDK自带的一个命令行工具,主要用于压力测试。它通过向系统发送随机...

    Android UiAutomator 自动化测试

    UIAutomator框架是Google为了简化和增强Android自动化测试体验而推出的一个工具。与基于Python的Monkey和MonkeyRunner等早期测试工具相比,UIAutomator提供了更丰富的事件操作支持。Monkey是Android SDK自带的测试...

    monkeyrunner使用要点

    Monkeyrunner 是一个由 Android SDK 提供的工具,用于自动化测试 Android 应用程序。它基于 Python,允许开发者编写脚本来控制设备或模拟器的行为,并与应用程序进行交互。本篇文章将详细讲解 Monkeyrunner 的环境...

    Android应用并行自动化测试技术研究与实现.pdf

    在自动化测试技术方面,文档提到了Android平台主流的几种自动化测试工具,如Monkey、MonkeyRunner、Robotium和Appium。Monkey是Android SDK自带的测试工具,它可以模拟发送随机的输入消息给应用程序,主要用于应用的...

    Web自动化测试面试题

    以Appium为例,它是一个跨平台的移动自动化测试工具,支持Android和iOS。相比于其他工具,Appium的优点在于其通用性和支持原生、混合和Web应用测试,缺点可能是学习曲线较陡峭。自动化测试方案通常包括搭建测试环境...

    android monkey自动化测试改为java调用monkeyrunner Api

    众所周知,一般情况下我们使用android中的monkeyrunner进行自动化测试时,使用的是python语言来写测试脚本。不过,最近发现可以用java调用monkeyrunner Api,用java语言写测试脚本。   于是,就简单研究了一下。...

    电视机顶盒自动化测试的研究与实现.pdf

    在自动化测试的工具选择上,传统上在Android端常用的自动化控制方法包括Robotium、MonkeyRunner、Espresso、Appium、UI Automator和TestBird等。不过,由于机顶盒的特殊性,这些方法在实际应用中会遇到一定的困难。...

    APP UI 自动化.zip

    使用工具如JUnitperf、MonkeyRunner等可以进行性能测试。 7. **回归测试**:每次修改或新增功能后,都需要运行自动化测试套件进行回归测试,确保原有功能不受影响。 8. **报告与分析**:测试结果需要清晰、详尽的...

    测试-App自动化知识点汇总1

    5. **UI自动化测试工具**:如 Espresso(Android)和KIF(iOS)用于编写更加简洁和强大的UI测试。Espresso提供了一个强大的API来编写同步的Android UI测试,而KIF(Keep It Functional)则是iOS平台的一个用户界面...

    android自动化测试知识点总结

    本次教程将教大家如何用monkeyrunner进行android的自动化测试,包括环境的搭建、monkeyrunner和uiautomatorviewer工具的使用。 打开eclipse新建一个avd(android模拟器),然后运行这个模拟器。打开eclipse新建一个...

    monkeyrunner简单的例子适用初学者

    MonkeyRunner 是 Android SDK 提供的一个自动化测试工具,它允许开发者编写 Python 脚本来控制 Android 设备或模拟器,执行一系列操作,如启动应用、触摸屏幕、按键等。这个工具对于初学者来说,是一个很好的起点,...

Global site tag (gtag.js) - Google Analytics