这应该是全网最详细的 “ Appium介绍 ” (小白必看!)
Posted 小洁码很快!
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了这应该是全网最详细的 “ Appium介绍 ” (小白必看!)相关的知识,希望对你有一定的参考价值。
1、Appium 是什么?
Appium是一个开源的,适用于原生或混合移动应用( hybrid mobile apps )的自动化测试工具,Appium应用WebDriver: JSON wire protocol驱动安卓和ios移动应用。
2、Appium的特点:
支持多平台(android、iOS等)
支持多语言(python、java、ruby、js、c#等)
Appium是跨平台的,可以用在OSX,Windows以及Linux桌面系统上运行。
Appium选择了Client/Server的设计模式。只要client能够发送http请求给server,那么的话client用什么语言来实现都是可以的,这就是如何做到支持多语言的原因;
Appium扩展了WebDriver的协议,没有自己重新去实现一套。这样的好处是以前的WebDriver API能够直接被继承过来,以前的Selenium(WebDriver)各种语言的binding都可以拿来就用,省去了为每种语言开发一个client的工作量。
3、Appium的哲学:
不需要重新编译或者修改应用
不被一种语言或者框架约束
不重复造轮子
开源免费
4、Appium原理:
原理图:
Appium是c/s架构的 ;
Appium是基于webdriver协议添加了对移动设备自动化api扩展而成的, webdriver是基于http协议的,第一连接会建立一个session会话,并通过post发送一个json告知服务端相关测试信息 。
Appium会首先开启一个监听4723端口的server,接收测试脚本发送过来的对应请求,再将对应的请求发送给中间件Bootstrap.jar(比如点击一个APP中的一个Button就是一条请求)。
Bootstrap.jar:
监听4724端口由Appium发送过来的相关请求,并且将请求转换成UiAutomator可以识别的命令发给UiAutomator进行处理。
那么Bootstrap作用是什么?
Bootstrap是Appium在初始化的时推送到Android手机上的一个UiAutomator测试脚本,该脚本的唯一一个测试方法所做的事情是在手机端开启一个SocketServer(通信模块),用来监听Appium从PC端过来的命令发送给UiAutomator来执行处理。它会监听4724端口获得命令然后传递给UiAutomator来做处理。
Bootstrap是uiautomator的测试脚本,它的入口类bootstrap继承于UiautomatorTestCase, 所以Uiautomator可以正常运行它 ,它也可以正常使用uiautomator的方法,这个就是appium的命令可以转换成uiautomator命令的关键;
其次,bootstrap是一个socket服务器,专门监听4724端口过来的appium的连接和命令数据,并把appium的命令转换成uiautomator的命令来让uiautomator进行处理;
总体来说:
AppiumBootstrap是一个jar包; Appium会将这个jar包打到device中; 然后使用adb shell uiautomator runtest AppiumBootstrap.jar -c io.appium.android.bootstrap.Bootstrap会使用一个SocketServer用于监听发送过来的命令; 得到命令之后,扔给Uiautomator执行;
大家都了解了吗,有什么不懂的地方可以加入我们群:642830685,一起交流,有大佬为你答疑解惑
如果不知道该怎样去学习软件测试,下面我整理的软件测试学习路线图应该会帮助到大家
希望大家能照着这个体系在1-2年内完成这样一个体系的构建。可以说,这个过程会让你痛不欲生,但只要你熬过去了。以后的生活就轻松很多。正所谓万事开头难,只要迈出了第一步,你就已经成功了一半,古人说的好“不积跬步,无以至千里。”等到完成之后再回顾这一段路程的时候,你肯定会感慨良多。
下面附带一份学习资料,希望能帮到你
上面是我收集的一些视频和面试题资料,对于软件测试的的朋友来说应该是最全面最完整的面试备战仓库,为了更好地整理每个模块,我也参考了很多网上的优质博文和项目,力求不漏掉每一个知识点,很多朋友靠着这些内容进行复习,拿到了BATJ等大厂的offer,这个仓库也已经帮助了很多的软件测试的学习者,希望也能帮助到你
关注我的微信公众号【程序员二黑】即可领取软件测试超硬核资源!
总之,学习如逆水行舟,不进则退。想要多高的薪资,就要付出多大的努力。
也祝大家可以顺利找到心仪的工作!
以上是关于这应该是全网最详细的 “ Appium介绍 ” (小白必看!)的主要内容,如果未能解决你的问题,请参考以下文章
校招:JAVA后端面试应该掌握到什么程度?全网Java学习路线最完整,最详细的版本,助你成功拿到满意的offer
这可是全网eNSP安装最完整,最详细的图解,没有之一(安装步骤)