zoukankan      html  css  js  c++  java
  • appium_appium简介

    什么是Appium

    Appium是一个开源测试自动化框架,可用于原生,混合和移动Web应用程序测试。 它使用WebDriver协议驱动iOS,Android和Windows应用程序。

    Appium的优势

    • 可以跨平台同时支持Android、iOS
    • 支持多种语言,java、python、php、Ruby等等。

    Appium架构原理

    Appium是在手机操作系统自带的测试框架基础上实现的,Android和iOS的系统上使用的工具分别如下:

    • Android(版本>4.3):UIAutomator,Android 4.3之后系统自带的UI自动化测试工具。
    • Android(版本≤4.3):Selendroid,基于Android Instrumentation框架实现的自动化测试工具。
    • ·iOS:UIAutomation(instruments框架里面的一个模板),iOS系统自带的UI自动化测试工具。

    我们的电脑(client)上运行自动化测试脚本,调用的是webdriver的接口,appium server接收到我们client上发送过来的命令后他会将这些命令转换为UIautomator认识的命令,然后由UIautomator来在设备上执行自动化。

    Appium的架构原理如上图所示,由客户端(Appium Client)和服务器(Appium Server)两部分组成,客户端与服务器端通过JSON Wire Protocol进行通信。

    Appium服务器

    Appium服务器是Appium框架的核心。它是一个基于Node.js实现的HTTP服务器。Appium服务器的主要功能是接受从Appium客户端发起的连接,监听从客户端发送来的命令,将命令发送给bootstrap.jar(iOS手机为bootstrap.js)执行,并将命令的执行结果通过HTTP应答反馈给Appium客户端。

    Bootstrap.jar。

    Bootstrap.jar是在Android手机上运行的一个应用程序,它在手机上扮演TCP服务器的角色。当Appium服务器需要运行命令时,Appium服务器会与Bootstrap.jar建立TCP通信,并把命令发送给Bootstrap.jar;Bootstrap.jar负责运行测试命令。

    Appium客户端。

    它主要是指实现了Appium功能的WebDriver协议的客户端Library,它负责与Appium服务器建立连接,并将测试脚本的指令发送到Appium服务器。现有的客户端Library有多种语言的实现,包括Ruby、Python、Java、JavaScript(Node.js)、Object C、PHP和C#。Appium的测试是在这些Library的基础上进行开发的。

    Appium组件

    • Appium Server
      Appium Server就是Appium的服务端——一个web接口服务,使用Node.js实现。
      安装方式
      npm install -g appium
    • Appium-Desktop
      Appium Desktop是一款适用于Mac,Windows和Linux的开源应用程序,它以美观而灵活的用户界面为您提供Appium自动化服务器的强大功能。它是几个Appium相关工具的组合:

    • 1、Appium Server的图形界面。 您可以设置选项,启动/停止服务器,查看日志等...您也不需要使用Node 的NPM来安装Appium,因为Node运行时与Appium Desktop捆绑在一起;
    2、您可以使用
      Inspector查看应用程序的元素,获取有关它们的基本信息,并与它们进行基本的交互。

     

    Appium GUI
    Appium GUI是Appium desktop的前身。 也就是把Appium server封装成了一个图形界面,降低了使用门槛。
    该产品的Windows版本在2015年的AppiumForWindows_1_4_16_1.zip之后就停止更新了。目前版本可以使用,但是封装的不是最新的Appium版本,而是1.4.16版本。如果要使用最新的桌面版需要使用Appium Desktop。
     
    Appium Clients
    因为Appium是一个C/S结构,有了服务端的肯定还有客户端,Appium Clients就是客户端,它会给服务端Appium Server发送请求会话来执行自动化任务。就像我们浏览器访问网页,浏览器是客户端,通过操作发送请求服务器来获取数据。我们可以使用不同的客户端浏览器(IE,Firefox,Chrome)访问一个网站。 Appium客户端可以使用不同的语言来实现,如Python,java等。

    Appium-desktop

    Appium-desktop主界面包含三个菜单Simple,Advanced、Presets

    Simple

    • host
      设置Appium server的ip地址,本地调试可以将ip地址修改为127.0.0.1
    • port
      设置端口号,默认是4723不用修改
    • start server
      启动 Appium server

    Advanced

    高级参数配置修改,主要是一些Android和iOS设备,log路径等相关信息的配置。

    Presets

    将Advanced中的一些配置信息作为预设配置。

     

    启动Appium

    点击Start Server,启动后控制台提示如下信息,表示Appium启动成功。

  • 相关阅读:
    网络English word
    Top instruction significance and use sar command
    远程传输+用yum安装文件+make编译安装软件
    windows主机向虚拟机Linux传输过程的错误重重艰苦历程
    pair结构体数组
    set容器
    scanf多组样例输入
    贪心硬币
    补一下蛇形矩阵
    如何在eclipse运行asn
  • 原文地址:https://www.cnblogs.com/huaerye/p/12166641.html
Copyright © 2011-2022 走看看