Appium 介绍以及工作原理


1、什么是Appium:

appium是一个移动端的自动化测试框架,可用于测试原生应用、移动网页应用、混合型应用,且可跨平台 ,并支持多种语言。

内容解释:

  • 什么是原生应用(Native App):是在Android、IOS等移动平台上利用提供的开发语言、开发类库、开发工具进行App软件开发。
  • 什么是移动网页应用(Web App):指网页内的应用,类似于基于浏览器访问淘宝、微博等应用。是用HTML5应用开发,是利用Web技术进行的App开发。Web技术本身需要浏览器的支持才能进行展示和用户交互,因此主要用到的技术是HTML5、Javascript、CSS等。
  • 什么是混合型应用(Native App + Web App):利用原生与H5的开发技术的混合应用,原生代码部分利用Web View插件或者其它框架为H5提供容器,程序主要的业务实现、界面展示都是利用与H5相关的Web技术进行实现的。
  • 什么是跨平台:针对不同平台(android、IOS),意思是可以针对不同的平台用一套api来编写测试脚本。

- 支持多种语言:支持多种语言,java、python、php、Ruby等等。

2、Appium各类组件:

  • Appium Server:是Appium的服务端,一个web接口服务,使用node.js实现。
  • Appium Desktop:是一款适用于Mac,Windows和Linux的开源应用程序,它以美观而灵活的用户界面为您提供Appium自动化服务器的强大功能。
  • Appium GUI:Appium GUI是Appium desktop的前身。 也就是把Appium server封装成了一个图形界面,降低了使用门槛。
  • Appium Clients:Appium是一个C/S结构,客户端Appium Clients会给服务端Appium Server发送请求会话来执行自动化测试脚本任务。支持多语言,因此有多个版本类型,java版本 python版本等。

3、Appium理念:

Appium 旨在满足移动端自动化需求的理念,概述为以下四个原则:

  • 不应该为了自动化而重新编译你的应用或以任何方式修改它。
  • 不应该被限制在特定的语言或框架上来编写运行测试。
  • 移动端自动化框架不应该在自动化接口方面重造轮子。
  • 移动端自动化框架应该开源,在精神、实践以及名义上都该如此。
  • (真牛逼!)

4、三张图了解 Appium工作原理:

  • appium 1.13版本之后的工作原理:
    在这里插入图片描述
    1、脚本将指令通过4723端口传给appium server服务端
    2、appium server服务端通过8200端口映射,将指令传给手机端6790端口
    3、6790端口通过netty server服务 启动uiautomator来执行处理去操作待测app

  • appium 1.13版本之前工作原理:
    在这里插入图片描述
    1、脚本将指令通过4723端口传给appium server服务端
    2、appium server服务端通过4724端口映射,将指令传给手机端4724端口
    3、4724端口通过socket服务 启动uiautomator来执行处理去操作待测app

  • appium 测试混合app 或者 h5:
    在这里插入图片描述
    1、脚本将指令通过4723端口传给appium server服务端
    2、appium server服务端通过8200端口映射,将指令传给手机端安卓内置的一个 android system webview
    3、android system webview 再去执行处理去操作待测app

想要了解工作原理,appium server日志不能不看!

  • 11
    点赞
  • 31
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值