appium 原理解析

原博客地址:https://www.cnblogs.com/leiziv5/p/6427609.html

Appium是 c/s模式的
appium是基于 webdriver 协议添加对移动设备自化api扩展而成的
webdriver 是基于 http协议的,第一连接会建立个 session 会话,并通过 post发送一个 json 告知服务端相关测试信息

IOS 原理图( 来源于:百度 )

appium ios封装了 封装了 封装了 apple 的 Instruments I框架,主要用了 框架,主要用了 Instrument里的 UIAutomation(Apple  的自动化测试框架),然后在设备中注 自动化测试框架),然后在设备中注 入  bootstrap.js 进 行监 听。
Client ent是我们编写的 webdriver脚本 ,中间是 appium启动 server (默认监听 4723 端口 ),
appium server  调用 instruments.js启动 ⼀一个 socket server ,同时分出一个 ,子进程运⾏instruments.app 将 bootstrap.js(一个 UIAutomation 脚本)注 ⼊入到 devices⽤于和外界进行交 。
最后 Bootstrap.js将执行的结果返回给 将执行的结果返回给 appium server  ,appium server再将结果返 回给 appium client 。

Android原理图(  来源于:百度)

4.2 以后是基于 uiautomator框架实现查找注入事件的, 框架实现查找注入事件的,框架实现查找注入事件的, 4.2 以前则是 instrumentation i框架的,并封装成一个叫 框架的, Selendroid 这玩意提供服务
Client ent是我们编写的 webdriver 脚本。中间是 appium启动 server  (默认监听  4723 端口 ),
appium server  会把请求转发给中间件 会把请求转发给中间件 Bootstrap.jar  ,它是用java写的,安装在 手机上 .Bootstrap监听 4723端口并接收appium  的命令,最终通过调 的命令过调 用 UiAutomator U 的命令来实现。
Bootstrap将执行的结果返回给 将执行的结果返回给 appium server 。
Appiumserver再将结果返回给 client端。

转载于:https://www.cnblogs.com/jiyanjiao-702521/p/9637261.html

appium 原理解析(转载雷子老师博客)相关推荐

  1. 自定义View入门 --转载自武老师博客160303

    原文地址:http://blog.csdn.net/risky78125/article/details/50609538 自定义View入门 long time no see,这次写一个灰常简单的一 ...

  2. Python自动化-APPium原理解析与实际测试案例分享

    目录结构 一.Appium概述 Appium架构原理 运行原理 1)Appium服务器 2)Bootstrap.jar 3)Appium客户端 二.Appium组件 三.Appium环境搭建 Node ...

  3. 【机器学习】<刘建平Pinard老师博客学习记录>线性回归原理

    目录 一.线性回归的模型函数和损失函数: 二.线性回归的算法: 1.梯度下降法: 2.最小二乘法: 三.线性回归的推广:多项式回归 四.线性回归的推广:广义线性回归 五.线性回归的正则化: 一.线性回 ...

  4. MD5算法在PB中的实现(转载自 - 阿多米 - 博客园)

    MD5算法在PB中的实现(转载自 - 阿多米 - 博客园) 注:转载请写明出处.本文转载自--阿多米,原链接:http://www.cnblogs.com/zzjder/archive/2008/10 ...

  5. 如何快速转载别人的CSDN博客文章并附带格式与图片

    1.问题背景 最近在学习Git过程中想了解git reflog命令的高级用法与命令详解,于是找到了这几篇特别优秀的文章: [1]使用git reflog 命令来查看历史提交记录并使用提交记录恢复已经被 ...

  6. 【学术】我读科学网“马臻”老师博客体会

    从知乎看到有博士提到马臻老师博客,便去关注了一下.看了一上午,摘录一些自己有感觉的句子吧. 1. 心中一杆秤 我看,无论别人怎么做,我们自己心中应该自有一杆秤. 一个美国参议院对热切期望踏入政界的年轻 ...

  7. python 等高线地图图片转 tin_由等高线生成TIN并由TIN生成坡度图【解决中文环境翻译差别的问题】(转载请注明出自博客园)...

    由等高线等生成TIN并生成坡度图的代码.在softline代码段对错误信息作了处理,不再使用"软线","软性线","柔性线","软 ...

  8. 阮一峰老师博客爬取与博客文章存储持久化方式的思考

    阮一峰老师博客爬取与博客文章存储持久化方式的思考 前言 博客文章存储持久化思考 文本形式存储 html形式存储 pdf形式存储 博客爬取思路 爬取思路一 爬取思路二 个人选择 pdf存储 结尾 前言 ...

  9. 解决阮一峰老师博客广告拦截器问题

    在浏览器阮一峰老师博客时,存在广告拦截器,无法显示页面.如下: 这个问题是浏览器的adb广告拦截器插件导致的,只需要把该页面从adb插件中移除就可以. 具体操作为点击右上角插件按钮,取消该页面即可 关 ...

  10. 【机器学习】<刘建平Pinard老师博客学习记录>Scikit-learnPandas(NumpyMatplotlib)学习线性回归

    目录 一.数据获取&问题定义: 1.数据获取: 2.问题定义: 二.整理数据: 三.使用Pandas读取数据: 1.导入依赖库: 2.使用Pandas读取函数: 四.数据准备: 1.查看数据: ...

最新文章

  1. 【笔记】微软onedirve云存储使用小结
  2. java time 周期性执行,详解ScheduledExecutorService的周期性执行方法
  3. 后台接收数组_「面试必备」最新整理出的腾讯C++后台开发面试笔记
  4. 【PM模块】维护业务处理流程—外部维护
  5. 论无线网络中的网络与信息安全技术
  6. 深耕“工业互联网”,华为云持续开花
  7. oracle 常用系统表
  8. 面试题之TCP三次握手和四次挥手详解
  9. Python题库——答案
  10. 新元宇宙每周连载《地球人奇游天球记》第十三回火星烧烤
  11. 纯css制作遮罩层特效
  12. synplify user guide note1
  13. XV6 RISCV 源码阅读之文件系统
  14. The Monster
  15. IntelliJ IDEA 为JAVA 项目添加lib
  16. ChaosBlade混沌工程工具
  17. 好看的数据可视化图片都是用什么做的? | 数答
  18. 【微信小程序控制硬件15 】 重认识无线物联网的配网协议,了解腾讯物联蓝牙协议LLSync SDK,腾讯连连小程序也可以蓝牙配网了。
  19. 我的世界java8 32下载_我的世界1.8.3
  20. C++多线程编程的几种实现方式小结

热门文章

  1. 这份Java面试题,阿里P7的正确率都不到50%!!
  2. 别人在抢红包,程序员在研究红包算法
  3. 支付宝系统架构(内部架构图)
  4. 一幅漫画趣味解读 Linux 内核
  5. 深大计算机专业进腾讯,国内中游985和深圳大学计算机专业怎么选?640报考深圳大学吃亏吗...
  6. #上位机开发大师之路# 管理员登陆模块开发
  7. mysql基础之日志管理(查询日志、慢查询日志、错误日志、二进制日志、中继日志、事务日志)...
  8. Windows 下 XDebug 手工配置
  9. openstack错误汇总
  10. 微信小程序如何引用其他js文件