### 自动测试文档知识点概述 #### 一、自动测试文档概览 自动测试文档是一种用于指导测试人员如何进行自动化测试的文档。这类文档通常包含了自动化测试的策略、工具选择、测试脚本示例等内容,旨在帮助测试团队提高测试效率与质量。 #### 二、Android平台自动化测试简介 在Android平台上进行自动化测试时,可以使用多种工具和技术。其中,最常用的是`monkey`和`monkeyrunner`。这两个工具是Android SDK自带的自动化测试工具,能够帮助开发者在模拟器或真实设备上执行自动化测试。 #### 三、Monkey工具详解 1. **基本介绍**: - `monkey`是一款简单的命令行工具,用于生成大量的随机用户行为事件来对Android应用程序进行压力测试。 - `monkey`可以用来测试应用的稳定性,通过模拟各种输入事件(如触摸、滑动等),检测应用在大量无序操作下的表现。 2. **应用场景**: - 当需要快速地测试应用在大量随机操作下的表现时,`monkey`是非常实用的选择。 - 适用于初步测试阶段,快速发现应用中的崩溃等问题。 3. **命令格式**: - 基本命令格式为:`adb shell monkey [参数]` - 常用参数包括:`-p`指定包名、`-v`增加日志详细度等。 4. **注意事项**: - `monkey`生成的操作是完全随机的,因此可能无法准确地重现问题。 - 对于复杂的测试需求,建议使用更高级的测试工具。 #### 四、Monkeyrunner工具详解 1. **基本介绍**: - `monkeyrunner`是一个基于Python的脚本工具,用于控制Android设备或模拟器。 - 它提供了高级的API来实现自动化测试,比如点击屏幕上的特定位置、发送按键事件等。 2. **应用场景**: - `monkeyrunner`适用于编写复杂的测试脚本,特别是当需要精确控制UI交互时。 - 可以用来执行一系列预定的动作序列,验证特定的功能是否按预期工作。 3. **安装配置**: - 需要安装Android SDK,并确保环境变量中包含SDK的`tools`目录。 - 需要安装Python环境(建议使用Jython,因为`monkeyrunner`是基于Jython编写的)。 4. **基本使用**: - 使用`monkeyrunner`之前,需要先连接到一个Android设备或模拟器。 - 通过`MonkeyRunner.waitForConnection()`等待设备连接成功。 - 可以使用`device.installPackage(path)`安装APK文件到设备。 - 可以使用`device.startActivity(component)`启动指定的应用组件。 5. **示例代码**: ```python from com.android.monkeyrunner import MonkeyRunner, MonkeyDevice device = MonkeyRunner.waitForConnection() device.installPackage("../samples/android-10/ApiDemos/bin/Apidemos.apk") device.startActivity(component="com.example.android.apis/com.example.android.apis.ApiDemos") ``` 6. **执行脚本**: - 编写好脚本后,可以在命令行中通过`monkeyrunner <脚本路径>`来执行脚本。 - 例如:`D:\Software\Android2.3.3\android-sdk-windows\tools>monkeyrunner monkeyrunnerTest.py` 7. **注意事项**: - 在编写脚本时需要注意异常处理,避免因错误导致测试失败。 - 脚本中应包含足够的等待时间,以便设备响应操作。 - 测试前应充分了解目标应用的界面结构,以便编写出有效的测试脚本。 #### 五、总结 通过对自动测试文档的分析,我们可以看出,在Android平台上进行自动化测试时,`monkey`和`monkeyrunner`都是非常重要的工具。`monkey`适合用于初步的压力测试,而`monkeyrunner`则更适合于编写复杂的测试脚本来验证特定的功能。通过合理地使用这两种工具,可以显著提高Android应用的测试效率和质量。































好了,废话不多说,我们直接进入主题吧。之所以想把这个过程写下来,是由于经过我这段时间在网上的搜索和学习,发现关于monkeyrunner的教程极少,几乎都是把android官方材料自己翻译了一下摆上去的,对于第一次接触的同学来说,可能还不太详细。我在这里就想以完全初学者的角度出来,真正从0开始,记录我的学习过程。本文仅针对真正的菜鸟,大虾们请飘过哈,嘿嘿。
要使用Monkeyrunner,我们首先得干神马呢?当然得准备使用环境。这个不外乎就是我们得事先安装好android的SDK,配置好开发环境(如Eclipse),安装好Python(因为Monkeyrunner其实是由Jython写的,直接调用android API来整的)。这些步骤网上都有非常详细的教程,教大家手把手地搭环境,我这里就不多废话了。
环境搭好后,接下来就开始我们的使用之旅了。网上的monkeyrunner很多都直接从实例代码入手,写得很粗略,也没有把详细步骤说明下来,搞得我确实废了两三天才摸到头绪。所以我这里会写得很详细,尽量帮助大家能够轻易地看懂。详细步骤如下(在模拟器上运行,由于不知道什么原因图片不能正常显示,所以我还是直接写命令吧):
1. 用Elipse打开andorid的模拟器或者在CMD中用andorid命令打开模拟器,如下:
D:\Software\Android SDK2.3\android-sdk-windows\tools>emulator -avd AVD2.3.3
Comments: 定位到android SDK的路径下的tools目录,运行上面这个命令。“AVD2.3.3”是我的模拟器的名字,这个命令是每个人自己命名的,用的时候需改成实际的名字。
2. 这个时候,如果一切正常的话,模拟器应该可以启动起来了。(运行monkeyrunner之前必须先运行相应的模拟器,不然monkeyrunner无法连接设备。这点很多教程上都没有说,我也试了好多次才明白过来)。接着,我们打开另一个CMD窗口(前一个不要关),还是定位到tools目录,输入命令"monkeyrunner",回车,将进入shell命令交互模式。
好了,接下来就可以导入monkeyrunner所要使用的模块了。当然是我们的"From...import..."
直接在shell命令中输入: from com.android.monkeyrunner import MonkeyRunner, MonkeyDevice 回车
OK,这步完成之后,我们就可以开始和模拟器“勾兑”了,哈哈,命令如下:
device = MonkeyRunner.waitForConnection()
没有报错的话,就代表和模拟器勾兑成功,我们可以接着“骚扰”它了。接下来,我们可以在里面装点东西了。输入如下命令,并传入你的apk所在相对路径即可。我这安装的是著名的ApiDemos。成功了会返回true。如果没有返回true,一般都是语法错误或者你传入的相对路径有问题,仔细检查下就没问题了。
device.installPackage("../samples/android-10/ApiDemos/bin/Apidemos.apk")
接下来,我们就可以启动其中的任意activity了,只要传入package和activity名称即可。命令如下:

- youj1234562014-06-29目前正想学习一些自动化测试的东西,资源很好

- 粉丝: 1
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助


最新资源
- 基于51单片机的数控稳压电源大学本科方案设计书.doc
- 网络基础知识培训.ppt
- 2013年下半年信息系统项目管理师真题及答案.docx
- 某电力公司市区供电公司项目管理员行为规范考评表.doc
- 探讨计算机网络故障处理与网络维护.docx
- 基于应用能力培养的高校计算机教学模式探讨.docx
- 网络机房防雷接地技术最全设计方案.doc
- 教育大数据解决方案.pptx
- 电路CAD课程设计波形发生器.doc
- 三级网络技术标准预测试卷.doc
- 软件项目管理开发计划.doc
- 数据库课程方案设计书--仓库管理系统4.doc
- 信息系统项目管理师学习笔记.doc
- 浙江省第六大学生电子商务竞赛.doc
- NIEH电子商务师案例试题1.doc
- 支持输入图片路径并按提示一键训练 YOLOv8 目标检测与实例分割模型且可一键导出 ONNX


