ios Monkey 的Macaca实现,Java代码
来源:互联网 发布:网络运营工资待遇 编辑:程序博客网 时间:2024/06/05 11:51
这是一篇转帖,为自己方便记录而已,大家不要喷~ 谢谢
iosMonkey
ios monkey 的Java代码在:https://github.com/happymff/Monkey_for_iOS.git
现在客户端是使用同步的方式处理发送的事件,效率稍低
经实测:
iPhone 6plus 10.2.1,每分钟可以执行大约40次事件;
iPhone 7 10.2,每分钟可执行大约60次事件;
通过修改代码实现了异步http请求,发送事件的请求数量可以大幅提升,但是很多请求会阻塞,没有执行,实际效果不好,遂放弃。
更新
2017.3.17: 原版本呼起app的指令是当成事件,按照一定的频率执行,不管现在是否是在测试APP页面都会执行。现在改为守护进程的模式,只有当前页面跳出测试APP时候才会执行打开APP的指令。
2017.4.5:
1.修复app守护进程的bug,由于时间问题导致的
2.增加返回homescreen的事件,事件概率是2%,返回手机主页5s后重新打开app
0、简介
1.修改了原版的构建方式,maven bulid(其实没看到之前构建的配置)
2.解决了idevicedebug 命令呼起app无效的问题
3.根据app实际情况,修改了特殊点的处理(在有些页面,点击固定的位置才能返回,不是通用的右上角)
4.如果不修改直接使用,直接使用target下面的jar包,如果实现自己的方法,需要重新编译
1、功能
1.可以模拟android monkey执行的方式,在IOS APP页面点击 滑动操等作,支持 ios 9和ios10
2.支持多台ios一起执行
3.计划保存截图(未完成)
4.计划自动收集crash日志(未完成)
2、准备macaca环境
安装usbmuxd
$ brew install usbmuxd
安装 ios-webkit-debug-proxy
$ brew install ios-webkit-debug-proxy
安装ios-deploy
$ npm i ios-deploy -g
安装ideviceinstaller
$ brew install ideviceinstaller
安装carthage
$ brew install carthage
安装macaca套件 包括,macaca-cli macaca-ios
npm install macaca-cli -gnpm install macaca-ios -g
MAC全局安装的路径分别如下:
/usr/local/lib/node_modules/macaca-cli/usr/local/lib/node_modules/macaca-ios
检测macaca环境,无报错
$ macaca doctor
导入macaca
$ pip install wd
如果导入报pip不存在的错,请先安装pip
$ brew install pip
如果安装pip报错,请先安装wget
$ brew install wget
3、WebDriverAgent项目重签名
按照项目
https://github.com/baozhida/MacacaAutomation
操作项目重签名
4、帮助命令
如果需要多个iOS设备一起执行,需要指定 proxyport ,同时macaca使用不同的端口
$ java -jar iosMonkey-1.0.jar -h-u:设备的UDID-b:测试App的Bundle-port:macaca服务的端口,默认3456-proxyport:usb代理端口,默认8900
5、执行iosMonkey
开一个窗口执行
$ macaca server –verbose
在一个新窗口执行
$ java -jar [iosMonkey.jar Path] -u [设备的UDID] -b [测试App的BundleID] -port [macaca服务端口,可选] -proxyport[usb代理端口,可选]
6、修改源码重新打包方法
如果需要源码实现自定义的功能,在项目目录下执行
$ mvn assembly:assembly
最后提示如下,标示打包成功,target下生成iosMonkey-1.0.jar,可以使用最新的包
INFO] ------------------------------------------------------------------------[INFO] BUILD SUCCESS[INFO] ------------------------------------------------------------------------[INFO] Total time: 7.350 s[INFO] Finished at: 2017-03-06T17:01:30+08:00[INFO] Final Memory: 20M/324M[INFO] ------------------------------------------------------------------------
- ios Monkey 的Macaca实现,Java代码
- Macaca Macaca 实现 IOS Monkey 测试 (支持 macaca2.x 版本)
- ios Monkey 的Appium实现,Java代码
- Macaca的app-inspector定位iOS元素
- macaca
- macaca
- Macaca 实现 iosMonkey (python 版)
- Macaca 实现 iosMonkey (python 版)
- Macaca 面向多端的自动化测试工具基于Python搭建详解 --Android、IOS搭建步骤
- Macaca自动化测试Android和IOS应用
- Macaca-python-iOS/Android环境搭建
- iOS 测试 SwiftMonkey :iOS 上的 monkey
- iOS 测试 SwiftMonkey :iOS 上的 monkey
- iOS实现截图的代码
- ios 一次性代码的实现
- Macaca之2.0版本(iOS)完全安装手册
- 通过脚本实现指定的Monkey操作
- Macaca之测试用例(Java版)
- DOS批处理命令Start的使用介绍吗,使用start命令快捷启动程序
- jenkins + Git 搭建持续集成环境
- 【前缀和】洛谷 P1115 最大子段和
- LaTex文档类型
- 2017 自考马原 最后两道大题
- ios Monkey 的Macaca实现,Java代码
- IMWeb前端学习笔记——Day7
- 对于C++中公有(public)、私有(private)、保护(protected),访问权限的一点总结
- ORA-28000:the account is locked
- 图像文件通过ABBYY FineReader转换为Excel
- 拓扑排序 gdufe acm 1183
- 为什么不能根据返回类型区分重载?
- photoshop简单处理不规则背景小图标
- JavaScript禁止没有回车事件的input触发submit提交表单事件,已有回车触发事件的input不受影响