Macaca基础原理

1、组成

Macaca基础原理
所有模块均可在官方github上找到对应的源码https://github.com/macacajs

Macaca

  • macaca-cli:命令行工具
    • macaca server:启动server
    • macaca server –verbose:启动server并打印详细日志
    • macaca doctor:检验当前macaca环境配置
  • app-inspector:元素查找工具
  • UI Recorder:脚本录制工具

WebDriver-server:C/S架构,等待client发送请求并做出响应

WebDriver-client:测试代码

(以http请求的方式发送给server,server接收请求,并执行相应操作,并在response中返回执行状态、返回值等信息),macaca-wd,wd.java,wd.py分别是Macaca团队针对Js、Java、Python的封装

DriverList

  • Android:针对Android平台的驱动集合
    • macaca-android:Android驱动
    • macaca-adb:封装了Android的adb命令,来实现一些adb的操作,比如安装卸载、启动app、获取设备列表
    • android-unicode:经过封装后的输入法,解决中文输入的问题
    • uiautomator-client:将来自server的操作指令转换为UIAutomator可以识别的指令,驱动uiautomator完成对应的操作
    • android-performance:用于自动化测试安卓性能相关的支持
  • iOS:针对iOS平台的驱动集合
    • macaca-ios iOS驱动
    • xctest-client:同安卓的uiautomator-client异曲同工,对XCUITest的封装,将来自server的操作指令转换为XCUITest可以识别的指令,驱动XCUITest完成对应的操作
    • ios-simulator:用于对ios模拟器的支持,可以通过模拟器运行用例
    • remote-debug:用于远程调试
  • Hybrid:针对Hybrid的驱动集合
    • macaca-chrome:web测试驱动
    • macaca-chromedriver:驱动chrome浏览器
    • ios-webkit-debug-proxy:适用于iOS平台对webview的调试
  • electron:针对pc端网页应用的支持
    • macaca-electron:electron驱动

2、执行

Macaca基础原理