美文网首页
①Appium概要梳理

①Appium概要梳理

作者: by小杰 | 来源:发表于2017-03-01 10:08 被阅读369次
    appium在android端的工作模式:

    <u>appium的核心其实是一个暴露了一系列REST API的server。</u>

    重点理解:

    这个server的功能其实很简单:监听一个端口,然后接收由client发送来的command。翻译这些command,把这些command转成移动设备可以理解的形式发送给移动设备,然后移动设备执行完这些command后把执行结果返回给appium server,appium server再把执行结果返回给client。
    (在这里client其实就是发起command的设备,一般来说就是我们代码执行的机器,执行appium测试代码的机器。狭义点理解,可以把client理解成是代码,这些代码可以是java/ruby/python/js的,只要它实现了webdriver标准协议就可以。)</br>

    架构图
    架构图.png
    简易图:
    简易图.png

    在Android端,appium基于WebDriver,并利用Bootstrap.js,最后通过调⽤用UiAutomator的命
    令,实现App的自动化测试。UiAutomator测试框架是Android SDK⾃自带的App UI自动化测
    试Java库。
    另外由于UiAutomator对H5的⽀支持有限,appium引入了chromedriver来实现基于H5的自动
    化。

    主要原理:

    1、左边的WebDriver script是我们的selenium测试脚本
    2、中间是起的Appium的服务,Appium在这边起了一个Server(4723端口),跟selenium
    Webdriver测试框架类似,Appium⽀支持标准的WebDriver JSONWireProtocol 。在这里提供
    了一套web服务,Appium Server接收web driver 标准请求,解析请求内容,调⽤用对应的框
    架响应操作。
    如:脚本发送一个点击按钮的请求给appium server,
    3、 appium server会把请求转发给中间件Bootstrap.jar ,它是用java写的,安装在手机上.
    Bootstrap 接收appium 的命令(4724端口),最终通过调⽤用UiAutomator的命令来实现。
    4、最后执⾏行的结果由Bootstrap返回给appium server
    5、另外,appium还用到了chromedriver来⽀支持基于H5(webview)的测试。

    appium局限性

    如果你在windows上安装appium,你没法使用预编译用于OS X的.app文件,你也将不能测试iOS apps,因为appium依赖OS X专用的库来支持iOS测试。这意味着你只能通过在mac上来运行iOS的app测试。这点限制挺大。
    也就是说,在Windows下我们只能测试android,没法测试iOS系统。

    appium运行组件
    • Nodejs
    • Java JDK
    • Android SDK
    • Eclipse
    • Appium

    接下来会更新,具体的环境搭建过程。

    相关文章

      网友评论

          本文标题:①Appium概要梳理

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