Appium笔记

  • appium服务端是一个Node.js应用,跑在电脑上用于和软件上的bootstrap进行通信。既然要通信,一定是有一套通信协议。
  • Appium 采用的是WebDriver协议。
  • Appium支持多种测试语言的根本原因在于,WebDriver协议为各种主流语言提供了一个第三方库,能够方便把测试脚本转化成符合WebDriver规则的URL。
  • Appium提供各个语言的第三方库,将测试脚本转化为WedDriver协议下的URL,通过Node服务发送到各个平台上的代理工具。
  • session是一个会话,在webdriver/appium,你的所有工作永远都是在session start后才可以进行的,一般,通过 POST / sessionURL,传入Desired Capabilities就可以开启session了。开启session后,会返回一个全局唯一的session id,以后几乎所有的请求都必须带上这个session id。
  • 苹果的UI自动化测试框架,在Xcode7以前使用UI Automation框架,Xcode7中苹果提供了新的框架UI Testing,在Xcode 8中干脆直接移除了对UI Automation的支持。
  • iOS真机器会装一个名为WebDriverAgentRunner的应用,它能根据被测试应用的BundleID将被测试软件打开。
  • session在网络应用中,称为“会话控制”。session对象存储特定用户会话所需的属性及配置信息。COOKIE和SESSION有什么区别? ( session 是一个抽象概念,开发者为了实现中断和继续等操作,将 user agent 和 server 之间一对一的交互,抽象为“会话”)
  • session对象存储特定用户会话所需的属性及配置信息,对应到这里其实就是desired Capabilities中的配置信息参数。

Appium流程

image.png

session理解

image.png

参考文档:
https://blog.csdn.net/jffhy2017/article/details/69220719
https://www.jianshu.com/p/b663fade1f7e

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。