zoukankan      html  css  js  c++  java
  • appium---appium自动化原理

      这几天在群里也看到一个这样的面试题,appium的原理是什么?我们一直在思考如何编写自动化测试用例,但是却忘记了最基本的原理是什么。

     Appium

    appium是一种开源的软件,跨平台(IOS、android),跨语言的自动换软件,不仅可以使用python,java编写测试用例,都可以进行运行。Appium使用的WebDriver的json wire协议来驱动Apple系统的UIAutomation库、Android系统的UIAutomator框架

    更多介绍查看appium官网:http://appium.io/

    Appium工作原理

    1、Android设备

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

    from appium import webdriver
    desired_caps = {
                     'platformName': 'Android',  # 测试版本
                     'deviceName': 'emulator-5554',   # 设备名
                     'platformVersion': '5.1.1', # 系统版本
                    "appPackage": "com.autonavi.minimap",   # app包名
                    "appActivity": "com.autonavi.map.activity.NewMapActivity",   # 启动launch Activity
                            }
    driver = webdriver.Remote('http://127.0.0.1:4723/wd/hub', desired_caps)

    2、IOS端

    在IOS端,appium同样也是基于webdriver协议的,不过IOS不同的是Apple中的Instruments(苹果独特)框架,主要用了Instrument的UIAutomation(Apple的自动化测试框架),然后在设备中注入bootstrap.js进行监听。

    简单的了解下appium原理,有哪里不对的,欢迎下方留言。共同学习

  • 相关阅读:
    egg-sequelize-ts 插件
    从理解webpack到配置
    jstree 学习
    谈谈对原型链的理解
    CSS 水平居中/布局 垂直居中 (月经问题)
    图片自然翻转并切换图片
    Javascript 高阶函数等
    django中related_name的作用和用法
    pycharm新建django项目,报错
    关于pycharm 使用sqlite创建数据库表,创建模型后,表找不到或者不显示。
  • 原文地址:https://www.cnblogs.com/qican/p/12668812.html
Copyright © 2011-2022 走看看