Desired Capabilities详解

Desired Capabilities详解,第1张

Desired Capabilities在启动session的时候是必须提供的。

Desired Capabilities本质上是key value的对象,它告诉appium server这样一些事情:

本次测试是启动浏览器还是启动移动设备?

是启动andorid还是启动ios?

启动android时,app的package是什么?

启动android时,app的activity是什么?

Appium的Desired Capabilities是扩展了webdriver的Desired Capabilities的,下面的一些通用配置是需要指定的:

automationName:使用哪种自动化引擎。appium(默认)还是Selendroid?

platformName:使用哪种移动平台。iOS, Android, orFirefoxOS?

deviceName:启动哪种设备,是真机还是模拟器?iPhone Simulator, iPad Simulator, iPhone Retina 4-inch, Android Emulator, Galaxy S4, etc

app:应用的绝对路径,注意一定是绝对路径。如果指定了appPackage和appActivity的话,这个属性是可以不设置的。另外这个属性和browserName属性是冲突的。

browserName:移动浏览器的名称。比如Safari' for iOS and 'Chrome', 'Chromium', or 'Browser' for Android;与app属性互斥。

udid:物理机的id。比如1ae203187fc012g。

下面这些属性是android平台特定的:

appActivity:待测试的app的Activity名字。比如MainActivity, Settings。注意,原生app的话要在activity前加个""。

appPackage:待测试的app的java package。比如comexampleandroidmyApp, comandroidsettings。

本文主要讨论android平台的appium测试方法和技巧,因此在这里就不列出ios设备特定的属性了。

更多信息请参考 官方文档

在这里我们发现,我们经常要获取app的package和activity名字,那么有什么工具可以让我们方便的获取到这些信息呢?下一节讲回答这个问题。

Appium是一个开源测试自动化框架,可用于原生,混合和移动Web应用程序测试。 它使用WebDriver协议驱动iOS,Android和Windows应用程序。

Appium是在手机 *** 作系统自带的测试框架基础上实现的,Android和iOS的系统上使用的工具分别如下:

首先在client(电脑)上运行自动化测试脚本,调用webdriver接口,然后appium server接收到client上发送过来的命令后,将这些命令转换为UIAutomator认识的命令,然后由UIAutomator来在设备上执行自动化。

appium架构原理如上图所示,由客户端(appium client)和服务器(appium server)两部分组成,客户端与服务器端通过JSON Wire Protocol进行通信。

Appium服务器是Appium框架的核心。它是一个基于Nodejs实现的>

话不多说,直接上干货:

appium的整体架构是C/S模式,整体流程(返回顺序为逆向):

脚本请求 ——> 4723端口appium server ——> 解析参数给PC端4724端口 ——> 发送给设备4724端口 ——> 通过设备4724端口发给bootstrapjar ——> Bootstrapjar把命令发给uiautomator

1、脚本请求 ——> 4723端口appium server :

首先我们要开启appium服务,即Appium server,也就是在命令行用appium命令打开的东西,默认监听4723端口。4723端口专门和脚本打交道,基于WebDriver协议。webdriver是按照server – client的经典设计模式设计的,作用就是启动基于WebDriver Wire协议的appium服务,接下来脚本与appium server的通信实际上是一个>

以上就是关于Desired Capabilities详解全部的内容,包括:Desired Capabilities详解、appium简介、读懂appium原理,看这篇就够了等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/web/10081775.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-05
下一篇 2023-05-05

发表评论

登录后才能评论

评论列表(0条)

保存