Appium 生态系统(基于Appium2.0)

Appium 生态系统

Appium 拥有相关软件和工具的生态系统。在本指南中,我们将讨论重要的 官方支持和社区支持的项目。

Appium Inspector

Appium 有一个图形客户端,可用于手动执行 Appium 命令、检查应用程序 层次结构、查看屏幕截图等。它对于 Appium 测试开发非常有用。

您可以 在此处了解有关检查器的更多信息:Appium Inspector

Appium Drivers

如果没有至少一个驱动程序,您将无法使用 Appium!以下是当前的驱动程序 由 Appium 团队维护。单击每个驱动程序的链接以查看特定安装 该驱动程序的说明和文档。

要了解有关驱动程序是什么以及它们如何工作的更多信息,请查看 驱动程序介绍

驱动安装密钥平台模式
ChromiumchromiummacOS, Windows, LinuxWeb
EspressoespressoAndroidNative
GeckogeckomacOS, Windows, Linux, AndroidWeb
Mac2mac2macOSNative
SafarisafarimacOS, iOSWeb
UiAutomator2uiautomator2AndroidNative、Hybrid、Web
XCUITestxcuitestiOSNative、Hybrid、Web

当然,您可以使用Appium驱动程序CLI安装在那里找到的任何其他驱动程序。

其他驱动

这些驱动程序不由 Appium 团队维护,可用于面向其他平台。

驱动安装密钥平台模式支持方
Flutter--source=npm appium-flutter-driveriOS, AndroidNative社区
LG WebOS--source=npm appium-lg-webos-driverLG TVWebHeadSpin
Linux--source=npm @stdspa/appium-linux-driverLinuxNative@fantonglang
Roku--source=npm @headspinio/appium-roku-driverRokuNativeHeadSpin
Tizen--source=npm appium-tizen-driverAndroidNative社区 / Samsung
TizenTV--source=npm appium-tizen-tv-driverSamsung TVWebHeadSpin
Windows--source=npm appium-windows-driverWindowsNative社区/Microsoft
Youi--source=npm appium-youiengine-driveriOS, Android, macOS, Linux, tvOSNative社区 / you.i

注意

如果您希望在 Appium 文档中列出一个 Appium 驱动程序,请随意 以创建 PR,以将其添加到此部分,并提供指向驱动程序文档的链接。

Appium Clients

您需要客户端来编写和运行 Appium 脚本。要了解有关客户端的更多信息,请阅读我们的 客户端简介。以下是已知 Appium 客户端的列表。你会想变得非常 熟悉您的客户端文档(以及任何Selenium客户端的文档) Appium 客户端依赖于),因为这是您将用作 Appium 的主要接口。

客户语言支持方
Appium Java clientJavaAppium团队
Appium Python clientPythonAppium团队
Appium Ruby Core client(推荐)
Appium Ruby client
RubyAppium团队
WebDriverIO
Nightwatch
Node.js社区
Appium .NET clientC#Appium 团队*
RobotFrameworkDSL社区

一般来说,任何与W3C WebDriver规范兼容的客户端都可以与Appium很好地集成。 某些特定于 Appium 的命令可能无法在其他客户端中实现。

Appium-Python-Client兼容性

Appium Python ClientSelenium bindingPython version
3.0.0+4.12.0+3.8+
2.10.0 - 2.11.14.1.0 - 4.11.23.7+
2.2.0 - 2.9.04.1.0 - 4.9.03.7+
2.0.0 - 2.1.44.0.03.7+
1.0.0 - 1.1.03.x3.7, 3.8
0.52及以下3.x2.7, 3.4 - 3.7

注意:Appium-Python-Client依赖于 Selenium Python binding,因此 Selenium Python binding更新可能会影响 Appium-Python-Client 的功能。 例如,Selenium 绑定中的某些更改可能会中断 Appium 客户端,所以请注意二者版本之间的兼容性。

Appium Plugins

Appium 插件提供了扩展或修改 Appium 行为的方法。这是插件列表 目前由 Appium 团队维护:

插件安装密钥描述支持方
Execute Driverexecute-driver在对 Appium 服务器的单次调用中运行整批命令Appium团队
Imagesimages图像匹配和比较功能Appium团队
Relaxed Capsrelaxed-caps放宽 Appium 对供应商对功能前缀的要求Appium团队
Universal XMLuniversal-xml不要使用 iOS 和 Android 的标准 XML 格式,而是使用在两个平台上相同的 XML 定义Appium团队

其他插件

插件安装密钥描述支持方
AltUnity--source=npm appium-altunity-plugin通过 AltUnityTester 框架,将 Unity 游戏和应用定位到具有新上下文的自动化HeadSpin
Device Farm--source=npm appium-device-farmManage and create driver session on connected android devices and iOS Simulators.@AppiumTestDistribution
OCR--source=npm appium-ocr-plugin通过 OCR 文本查找元素@jlipps
Reporter--source=npm appium-reporter-plugin生成带有屏幕截图的独立合并 html 报告。可以从appium服务器获取报告,而不必担心繁重的工作,例如屏幕截图捕获,报告生成等。@AppiumTestDistribution

注意

如果您维护一个 Appium 插件,并希望在 Appium 文档中列出,请随意 制作 PR 以将其添加到本节中,并带有指向插件文档的链接。

帮助工具

以下工具也可能对 Appium 用户有用:

名字描述支持方
appium-installer帮助设置 Android 和 iOS 的 Appium 环境@AppiumTestDistribution

更多详情(appium.io官网):Appium 生态系统 - Appium 文档

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/101532.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【k8s】ingress-nginx通过header路由到不同后端

K8S中ingress-nginx通过header路由到不同后端 背景 公司使用ingress-nginx作为网关的项目,需要在相同域名、uri,根据header将请求转发到不同的后端中在稳定发布的情况下,ingress-nginx是没有语法直接支持根据header做转发的。但是这个可以利…

sql union 注入

sql union 注入 一, 参数分类 根据可控参数的类型不同, 对注入类型分类: 1. 数字型select * from table where id1 2. 字符型select * from table where usernameroot 3. 搜索型select * from table where id like %root% 4. 关于注释:注入时, 在查询参数中使用注释需要url编…

【ARM Coresight 系列文章19 -- Performance Monitoring Unit(性能监测单元)

文章目录 1.1 PMU 介绍1.2 PMU 寄存器1.2.1 PMU 管理寄存器1.2.2 PMU 外设识别寄存器1.2.3 PMU 组件识别寄存器1.3 性能监控事件1.3.1 Cortex-A9 特定事件1.1 PMU 介绍 许多体系结构都包含 PMU(Performance Monitoring Unit)硬件,用于跟踪、计数系统内部的一些底层硬件事件…

[代码随想录]二叉树篇

文章目录 1. 二叉树之层序遍历1.1 144-二叉树的前序遍历1.2 94-二叉树的中序遍历1.3 145-二叉树的后序遍历1.4 102-二叉树的层序遍历1.5 107-二叉树的层序遍历II1.6 199-二叉树的右视图1.7* 637-二叉树的层平均值1.8* 429-N叉树的层序遍历1.9 515-在每个树行中找最大值1.10* 11…

k8s修改集群IP--重置集群

原来IP地址 192.168.10.138 k8s-master 192.168.10.139 k8s-node1 192.168.10.140 k8s-node2 新IP地址 192.168.10.148 k8s-master 192.168.10.149 k8s-node1 192.168.10.150 k8s-node2 cp -Rf /etc/kubernetes/ /etc/kubernetes-bak pki 证书目录保留下来: rm -rf …

Ubuntu18.04下载安装基于使用QT的pcl1.13+vtk8.2,以及卸载

一、QVTKWidget、QVTKWidget2、QVTKOpenGLWidget、QVTKOpenGLNativeWidget 区别 1.Qt版本 Qt5.4以前版本:QVTKWidget2/QVTKWidget。 Qt5.4以后版本:QVTKOpenGLWidget/QVTKOpenGLWidget。 2.VTK版本(Qt版本为5.4之后) 在VTK8.2以前的版本:QVT…

Springboot——集成jodconverter做文档转换

文章目录 前言jodconverter 简介下载安装 libreoffice代码演示1、创建springboot项目工程并引入依赖2、配置3、准备一个docx模板4、编写测试代码 运行后的样式linux 环境下安装 libreoffice 前言 公司项目开发中,早期使用docx4j进行word转pdf,出现了很多…

Linux C/C++实现SSL的应用层VPN (MiniVPN)

SSL协议和VPN(虚拟私人网络)原理是网络安全领域中的两个重要概念。 SSL协议,全称安全套接层(Secure Sockets Layer),是一种广泛应用于互联网的安全协议,主要在两个通信端点之间建立安全连接&am…

网络安全工程师最详细学习和职业规划路线(书籍推荐和导图下载)

网络安全行业热火朝天,但我们很少看到这个领域相关职业路线的规划,这一方面是由于这个行业还比较年轻,还没有完全建立职业路径,另一方面也是因为高端职位以前比较少,很少有人到达顶峰,所以难以总结。 但随…

计算机毕业设计 it职业生涯规划系统的设计与实现 Javaweb项目 Java实战项目 前后端分离 文档报告 代码讲解 安装调试

🍊作者:计算机编程-吉哥 🍊简介:专业从事JavaWeb程序开发,微信小程序开发,定制化项目、 源码、代码讲解、文档撰写、ppt制作。做自己喜欢的事,生活就是快乐的。 🍊心愿:点…

动手学强化学习第2章多臂老虎机

2.1简介 多臂老虎机问题可以被看作简化版的强化学习问题。但是其只有动作和奖励没有状态信息,算是简化版的强化学习问题。 2.2问题介绍 2.2.1问题定义 在多臂老虎机(MAB)问题中,有一个有K根拉杆的老虎机,拉动每一根拉杆都对应一个关于奖励…

深度思考面试常考sql题

1 推荐工具 在线运行SQL 2 阿里一面 3 百度一面 4 一道百度校招二面sql题 力推一个在线运行sql的网站:https://www.json.cn/runcode/run_sql/ 有一张学生表stu,包含sid, std_name,course_name,score等几个字段,数据如下,要求…

在 centos7 上安装Docker

1、检查linux内核 Docker 运行在 CentOS 7 上,要求系统为64位、系统内核版本为 3.10 以上。 Docker 运行在 CentOS-6.5 或更高的版本的 CentOS 上,要求系统为64位、系统内核版本为 2.6.32-431 或者更高版本。 uname -r 2、使用 root 权限登录 Centos…

Springboot 集成 Redis集群配置公网IP连接报私网IP连接失败问题

1、问题:在Springboot 集成 Redis集群配置公网IP连接报私网IP连接失败,一直报私有IP连接失败 14 14:57:49.180 WARN 22012 --- [ioEventLoop-6-4] i.l.c.c.topology.ClusterTopologyRefresh : Unable to connect to [192.168.0.19:6384]: connection …

vue、uniapp实现组件动态切换

在Vue中,通过使用动态组件,我们可以实现组件的动态切换,从而达到页面的动态展示效果。 vue 中 component组件 is属性 功能描述 例如:有多个tabs标签,如:推荐、热点、视频等。用户点击标签就会切换到对应组…

docker应用记录总结

一、前言 docker这类部署工具,久而久之不使用非常容易忘记,甚至连操作命令都容易忘记。网上也有比较全的docker使用教程。这里做一个记录总结,纯属是温故知新。 二、docker部署应用 1、docker印象 docker首先让我想到的是是虚拟化技术&…

使用Python构造VARIMA模型

简介 VARMA(p,q)结合了VAR和VMA模型,其中p是向量自回归(VAR)模型的滞后期数,q是VMA模型的移动平均的阶数。 VARMA是ARMA的推广,它将ARMA模型扩展到多个时间序列变量的情况,通过VAR和VMA的线性组合来描述多个时间序列变量之间的联…

踩雷react-useRef钩子函数

今天测试提了一个bug,之前做的有个需求,在触发事件发起请求后,成功响应返回的新的数据没有第一时间渲染到网页上。 方法也都成功更新了数据,就是渲染会慢1-2分钟,排错排了老半天,最后找到了原因。 一般情…

系统架构设计:18 论基于DSSA的软件架构设计与应用

目录 一 特定领域软件架构DSSA 1 DSSA 2 DSSA的基本活动和产物 (1)DSSA的基本活动和产物

node.js知识系列(4)-每天了解一点

目录 11. 异步文件操作文件读取文件写入 12. 包管理器(npm)13. 子进程14. 事件发射器(EventEmitter)15. 异步编程和回调16. Node.js 集成测试工具和框架17. Express.js 中间件的 HTTP 请求流程18. 文件上传和验证19. Express.js 中…