MonkeyTalk MonkeyTalk Agent 安装方法介绍

Haibo · 2015年08月08日 · 最后由 ivan 回复于 2016年04月22日 · 4450 次阅读

MonkeyTalk 文章合集 By penghaibo203

MonkeyTalk Java API 使用教程
Ant 编译 MonkeyTalk Agent 方法介绍
移动端 App UI 自动化测试浅谈
MonkeyTalk 自动化持续集成方案
MonkeyTalk 移动 App 自动化测试
MonkeyTalk Agent 安装方法介绍

前言

要使用 MonkeyTalk 平台进行自动化测试,我们需要重新打包从而将 MonkeyTalk 的客户端加入我们的 app 中。在下载的 MonkeyTalk 安装 zip 包里面,有一个 agents 的文件夹,iOS 客户端和 Android 客户端分别对应在不同的目录下,如下图所示:
此处输入图片的描述
下面分别介绍 Eclipse,Android Studio 以及 Xcode 平台的 Agent 安装流程。

Eclipse 工程安装流程

  • 在 Eclipse 中安装 AspectJ Development Tools(AJDT) 插件,点击 Help->Install New Software...,输入地址:http://downloads.eclipse.org/tools/ajdt/37/update
  • 然后将你的 Android 工程转化成 AspectJ 此处输入图片的描述
  • 将 monkeytalk-agent.jar 加入你的 Android 工程,下载地址:http://pan.baidu.com/s/1o6KIXGQ 在你的 Android 工程目录下创建一个 libs 目录(如果有的话就不用创建了),把上面下载的 jar 拷进去
  • 将 monkeytalk-agent.jar 包含进 AspectJ build 路径下(在 monkey talk-agent.jar 上右键->AspectJ Tools->Add to Aspectpath) 此处输入图片的描述
  • 修改 AndroidManifest.xml 文件,包含这两个权限:android.permission.INTERNET;android.permission.GET_TASKS 此处输入图片的描述
  • 修改工程属性(工程上点击右键->Properties->Java Build Path),选择 Order and Export tab,勾选 AspectJ Runtime Library 此处输入图片的描述
  • 然后重新编译,打包 apk,安装到手机

Android Studio 工程

  • 在你的 app 目录下的 build.grade 文件中增加 aspectj 依赖: java buildscript { repositories { mavenCentral() } dependencies { classpath 'com.uphyca.gradle:gradle-android-aspectj-plugin:0.9.5' } }
  • 然后应用 aspectJ 插件 java apply plugin: 'android-aspectj'
  • 在 app 目录下建立一个 monkey-libs 目录,把 Android agent 的 jar 包拷贝进去,然后在 dependencies 下加入以下依赖 java dependencies { compile fileTree(dir: 'libs', include: ['*.jar']) monkeytalkCompile fileTree(dir: 'monkey-libs', include: ['*.jar']) }
  • 在 BuidTypes 中加入 monkeytalk.initWith(buildTypes.debug) monkeytalk { applicationIdSuffix ".monkey" }
  • 在 src 目录下建立一个 monkeytalk 目录,然后把包含 AndroidManifest.xml 文件进去。
  • 在 AndroidManifest.xml 中加入下面几项: xml <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.georgepapas.monkeytalkdemo" > <uses-permission android:name="android.permission.GET_TASKS"/> <uses-permission android:name="android.permission.INTERNET"/> </manifest>
  • 最后,连接手机,在命令行中执行下面的命令进行打包: shell ./gradlew clean installMonkeytalk

Xcode 工程安装流程

  • 在 Xcode 中打开应用程序的工程
  • 在工程下的 build target 上单击右键,选择 Duplicate,创建一个工程的 target 的备份 此处输入图片的描述
  • 重命名该备份,如:xxx_MonkeyTalk 此处输入图片的描述
  • 然后还要改下 Scheme 的名字,打开 Manage Schemes 窗口 此处输入图片的描述 此处输入图片的描述
  • 将下载的 Monkeytalk lib 导入工程中 此处输入图片的描述
  • 在 Add to Targets 窗口中,选择你的 monkeytalk app 此处输入图片的描述
  • 在 build phases 选项卡中,点击 Link Binaries With Libraries 卡片,检查是否包含 libstdc++.6.0.9.dylib, libsqlite3.dylib, CFNetwork.framework 以及 QuartzCore.framework 这四个 lib,如果没有则添加进来 此处输入图片的描述
  • 进入 Build Settings 选项卡下,定位到 Linking 板块,在 Other Linker Flags 属性中加入-all_load(该步骤非必要步骤)。 此处输入图片的描述
  • 最后,你就可以将配置好的 monkeytalk target 运行在你的设备或者模拟器上了 此处输入图片的描述
共收到 9 条回复 时间 点赞

感谢分享!

#1 楼 @testly 我记得官方好像提供了一个不用修改代码就插入 agent 的方法。 貌似是收费的。

这里图片坏了一张。

#3 楼 @lihuazhang 已重新添加过

MonkeyTalk 与 Appium 相比如何?

#5 楼 @hellozzz MonkeyTalk 与 Appium 的比较,请参考这篇文章:https://testerhome.com/topics/1667

图片都不能看了。。。

图片不能看呀 。。。

Haibo MonkeyTalk 移动 App 自动化测试 中提及了此贴 01月21日 23:30
Haibo MonkeyTalk Java API 使用教程 中提及了此贴 06月26日 17:51
需要 登录 后方可回复, 如果你还没有账号请点击这里 注册