《环境技术》
Macaca是阿里提供的一套自动化测试框架,目前已开源。
花了两三个小时研究了一下Macaca的实现原理。因为很好奇它与appium、selenium有啥区别。
实现原理本质上与selenium的webdriver是一样的。appium也是使用的webdriver,只不过添加了一些app特别的属性和操作。
都是使用W3C标准协议,通过启动服务与客户端代码之间进行http通信,执行相应的命令,并返回执行结果。python客户端中使用requests来发送请求。
只不过Macaca将app和web的自动化合并到一起了。web浏览器、IOS、Android端都支持、web application也支持。
要运行哪个终端的自动化,都需要事先安装一个客户端环境。
比如要执行安卓设备app自动化,需要安装好安卓自动化运行环境。
web端 - chrome浏览器,也需要事先安装好chrome自动化环境 ,即chrome驱动和chrome浏览器。
由Macaca自己来启动服务端,与appium的机制一样。
客户端支持:js、java、python. 客户端与服务器进行连接,并发送命令。Server-Client模式。
安装步骤 :
1、安装 Node.js请安装 Node.js v6.0 或者更高版本,装好 Node.js 后命令行里就已经集成了 npm 工具,为了提高安装模块的速度,请使用国内的 cnpm。 Macaca安装。必须先安装Node.js。
2、命令行工具全局安装 $ npm i -g macaca-cli 如果看到如下可爱的 ,那恭喜你安装成功啦!重新安装则会覆盖更新。
3、安装驱动(不同驱动适应不同平台的支持)驱动可以按照自身需要选择性的安装, 比如只需要测试 iOS平台用例,就执行iOS的安装命令: $ npm i macaca-ios -g
如果是chrome浏览器: $ npm i macaca-chrome -g
即: $ npm i macaca-${platform} -g
4、环境检查通过 macaca doctor 可以检查环境是否配置成功 $ macaca doctor
可以从电脑如下目录 中,找到安装的内容:
=========
技术交流私