APP自动化测试神器之Appium-Capability的用法

知乎首发地址:https://zhuanlan.zhihu.com/p/141439504

一、什么是Capability和session

Capability的功能是配置Appium会话。他们告诉Appium服务器您想要自动化的平台和应用程序。DesiredCapabilities是一组设置的键值对的集合,其中键对应设置的名称,而值对应设置的值。(如:"platformName": "Android")Desired Capabilities主要用于通知Appium服务器建立需要的Session。

会话Session:Appium的客户端和服务端之间进行通信都必须在一个Session的上下文中进行。客户端在发起通信的时候首先会发送一个叫作“Desired Capabilities”的JSON对象给服务器。服务器收到该数据后,会创建一个session并将session的ID返回到客户端,之后客户端可以用该session的ID发送后续的命令。

二、常用Capability配置讲解

如果有了解过Capability的人会发现一个问题,其实他主要分成了三部分:公共部分、ios部分、android部分,如果你android想用ios的那是不可能的,so,老老实实去了解每个平台有哪些,他们的作用是什么。下面我们介绍一些公用常用的,红色标记的为常用的选项。

官方文档:http://appium.io/docs/cn/writing-running-appium/caps/#android

1、Appium服务器初始化参数

下面红框圈出来的是我们常用的一些键值对。

APP自动化测试神器之Appium-Capability的用法_第1张图片

2、Android独有的Capability

还有很多,截图不全。

APP自动化测试神器之Appium-Capability的用法_第2张图片

3、IOS独有的Capability

还有很多键值对,可以参考官方文档:

APP自动化测试神器之Appium-Capability的用法_第3张图片

三、使用Appium创建一次会话

通过设置Capability,创建与Android设备应用的会话session。

1、启动appium服务

APP自动化测试神器之Appium-Capability的用法_第4张图片

Host:127.0.0.1(如果是其他主机,则填相应的IP地址)

端口:4723(固定值)

点击start server v1.7.1

2、创建New Session Window

APP自动化测试神器之Appium-Capability的用法_第5张图片

方式1:File->New Session window

方式2:点击上图圈的按钮

3、New Session Window设置

Automatic Server 本地AppiumServer服务

Custom Server:例如,如果要针对运行在网络中另一台计算机上的Appium服务器启动Inspector会话,这很有用。

Sauce Labs:如果您无法访问机器上的iOS模拟器,则可以利用Sauce Labs帐户在云中启动Appium会话。

TestObject:您还可以利用TestObject的真实设备云来进行真机测试。

APP自动化测试神器之Appium-Capability的用法_第6张图片

4、启动会话

点击上图右下角的Start Session,启动一个新的会话,如果你的android模拟器或者真机已经连接上ADB,则可以直接抓取到设备的页面,如下图(itools中启动了,并安装了qq):

APP自动化测试神器之Appium-Capability的用法_第7张图片

启动成功之后就可以使用 Inspector来进行元素空间获取了。 注意:默认的元素定位有一些不准,需要切换到第二个坐标点定位选项后再切换回来才能准确定,后续就可以针对这些页面元素进行自动化脚本的开发啦。

附图移动端测试的知识脑图,可以完善我们测试的知识体系,如果知友对这部分内容感兴趣,可以持续关注小编的账号。

APP自动化测试神器之Appium-Capability的用法_第8张图片

除此之外,小编还录制了不少这方面的技术视频,知友如果有需要,可以私聊本小编获取哦!

APP自动化测试神器之Appium-Capability的用法_第9张图片

欢迎关注作者,如果觉得写的还不错,就给点个赞同、喜欢、收藏(后续持续更新)。

【全文手打 如需转载 请标注此出处】

你可能感兴趣的:(APP自动化测试神器之Appium-Capability的用法)