美文网首页
Macaca简介

Macaca简介

作者: 李先生的咸柠七 | 来源:发表于2019-05-10 15:10 被阅读0次

官网:https://macacajs.com/zh/

github:https://github.com/macacajs

一、简单介绍:

Macaca 是由阿里巴巴公司开发的一套面向用户端软件的测试解决方案。
提供了自动化驱动,环境配套,周边工具,集成方案,旨在解决终端上的测试、自动化、性能等方面的问题。

1、多端支持:

Macaca 支持主流的移动技术平台 iOS,Android,以及两大平台的混合运行时 Webview,也支持以往的桌面端浏览器。

2、多语言栈支持:
Macaca 提供 Node.js, Java, Python 三大主流的语言栈,方便工程师和所在团队选择合适的开发语言。

3、集成和融合:
Macaca 提供了多种持续集成方案和功能模块,方便集成到研发和测试的各个环节。

4、社区生态:
Macaca 拥有庞大的用户群,自我生长的开源形态和优质的中文社区环境,更多请见帮助支持

二、模块拆分:

1.png
                                                                                模块拆分图

Macaca

1. macaca-cli

Macaca提供的命令行工具

$macaca server 启动server

$macaca server --verbose 启动server并打印详细日志

$macaca doctor 检验当前macaca环境配置

2. app-inspector

macaca提供的元素查找工具,可以将app视图的结构以布局结构树的格式在浏览器上展示出来,用过点击某个元素,就可以方便的查询到该控件的基本信息,以方便查找。具体使用可参考官网: https://macacajs.com/inspector

3. UI Recorder

macaca提供的脚本录制工具,可以通过录制获得脚本。 https://macacajs.com/recorder

WebDriver-Server

Macaca是按照经典的Server-Client设计模式进行设计的,也就是我们常说的C/S架构。WebDriver-server部分便充当了server这部分的角色,他的职责就是等待client发送请求并做出响应。

WebDriver-Client

client端简单来讲就是我们的测试代码,我们测试代码中的一些行为,比如控件查找、点击等,这些行为以http请求的方式发送给server,server接收请求,并执行相应操作,并在response中返回执行状态、返回值等信息。

也正是基于这种经典的C/S架构,所以client端具有跨语言的特点,macaca-wd,wd.java,wd.py分别是Macaca团队针对Js Java 以及Python的封装,只要能保证client端按照指定的要求发送Http请求,任意语言都可以。

DriverList

自动化要在不同的平台上跑,需要有对应平台的驱动,这部分驱动接收到来自server的操作命令,驱动各自平台的底层完成对应的操作。

1. Android

Macaca针对安卓平台的驱动集合

  • macaca-android 安卓驱动
  • macaca-adb 封装了安卓的adb命令,来实现一些adb的操作,比如安装、卸载、启动app、获取设备列表这些操作
  • android-unicode 经过封装后的输入法,解决中文输入的问题
  • uiautomator-client 将来自server的操作指令转换为UIAutomator可以识别的指令,驱动uiautomator完成对应的操作
  • android-performance 用于自动化测试安卓性能相关的支持
2. iOS

Macaca针对iOS平台的驱动集合

  • macaca-ios iOS驱动
  • xctest-client 同安卓的uiautomator-client异曲同工,对XCUITest的封装,将来自server的操作指令转换为XCUITest可以识别的指令,驱动XCUITest完成对应的操作
  • ios-simulator 用于对ios模拟器的支持,可以通过模拟器运行用例
  • remote-debug 用于远程调试
3. Hybrid

Macaca针对Hybrid的驱动集合。

  • macaca-chrome web测试驱动
  • macaca-chromedriver 驱动chrome浏览器
  • ios-webkit-debug-proxy 适用于iOS平台对webview的调试
4. Electron

Macaca针对pc端网页应用的支持

  • macaca-electron

Macaca执行流程图:

2.png

相关文章

  • Macaca简介

    官网:https://macacajs.com/zh/ github:https://github.com/mac...

  • 自动化测试Macaca

    Macaca简介: Macaca是由阿里巴巴公司开发的一套自动化解决方案,适用于PC端和移动端。 Macaca P...

  • Macaca 极简教程

    Macaca 介绍 源码空间:https://github.com/macacajs 模块拆分讲解: Macaca...

  • 1-Macaca工具生态简介

    1 什么是Macaca Macaca 是一套面向用户端软件的测试解决方案,提供了自动化驱动,环境配套,周边工具,集...

  • Macaca的介绍安装使用

    Macaca介绍 Macaca的基本组成 通过对源码各个模块的分析,可以帮助我们对Macaca的整体构成有一个基础...

  • macaca(一) windows下环境搭建

    macaca 喜欢你就点这里 1、macaca 是啥呢 macaca是一套自动化解决方案,支持支持主流的移动技术...

  • Macaca简单入门

    执行Macaca自动化脚本时,首先需要启动一个Macaca服务器: 参数设置 启动Macaca服务器时如果没有指定...

  • macaca原理

    AndroidMacaca针对安卓平台的驱动集合 macaca-android 安卓驱动macaca-adb 封装...

  • macaca(二) sample demo

    先来个macaca源码地址吧!source code macaca都是开源的呀!!!好赞 一、java sampl...

  • Mac:Macaca App Inspector安装详细步骤

    Macaca App Inspector,阿里开源的Macaca框架中的一个小工具。App Inspector 是...

网友评论

      本文标题:Macaca简介

      本文链接:https://www.haomeiwen.com/subject/uleaoqtx.html