Appium学习日记(二)—— 入门学习(安装Appium和配置环境)
入门
1、安装 Node.js
进入nodejs的官网下载安装包安装,一路点击下一步就行。
安装完毕之后,打开命令行,输入:node -v
;显示类似于v10.13.0
的版本号信息则表示安装成功。
2、安装Appium以及相关环境配置
Appium可以通过两种方式之一安装:通过NPM或下载Appium Desktop,这是一种基于桌面的图形化方式来启动Appium服务器。
2-1、通过NPM安装
实际安装简单如下:
npm install -g appium
2-2、通过Appium Desktop安装
只需从发布页面下载最新版本的Appium Desktop。
2-3、JDK安装以及环境变量配置
这个就参照别人的教程吧。
2-4、安装Android SDK
Android SDK下载地址:http://tools.android-studio.org/index.php/sdk
。
依次点击AndroidSDK工具>>SDK Tools>>会跳转到以下界面,然后选择你的系统下载就好,Windows建议选择.exe后缀那个。
下载之后,一路next就行,记住自己的安装目录,在安装目录下找到SDK Manager.exe,点击启动。
之后同样要添加环境变量,和jdk操作一样,点击新建,添加
变量名:ANDROID_HOME
变量值:你的sdk安装目录下的android-sdk文件夹,如:C:\Program Files(X86)\Android\android-sdk
变量名尽量不要手动输入,建议点击浏览目录,找到该文件夹,点击确定.
然后在Path环境变量里添加:%ANDROID_HOME%\tools;%ANDROID_HOME%\platform-tools;
完成后点击确定,返回上层菜单,再点确定,保存.
在cmd终端输入:adb version
Android Debug Bridge version 1.0.40
Version 4986621
Installed as C:\Program Files (x86)\Android\android-sdk\platform-tools\adb.exe
显示以上类似信息说明安装成功
2-5、验证安装
当确认Appium安装完毕后,我们可以通过appium-doctor
的命令来检查当前appium安装是否完善,当前的JDK、SDK等环境是否配置正确。
提供--ios
或--android
标志以验证所有依赖项都设置正确。
如果 appium-doctor
返回的内容是有错的,根据返回的具体的提示,缺什么补什么。
3、特定的驱动程序设置
你可能想使用Appium来自动化一些特定的东西,比如iOS或Android应用程序。Appium“驱动程序”为特定平台的自动化提供支持。有许多这样的驱动程序可以让您访问不同类型的自动化技术,并且每个驱动程序都有自己的特定设置要求。这些要求中的大多数与特定平台上的应用程序开发要求相同。例如,要使用我们的Android驱动程序自动化Android应用程序,您需要在系统上配置Android SDK。
在某些时候,请确保您查看了要自动化的平台的驱动程序文档,以便正确设置系统:
- The XCUITest Driver (for iOS and tvOS apps)
- The Espresso Driver (for Android apps)
- The UiAutomator2 Driver (for Android apps)
- The Windows Driver (for Windows Desktop apps)
- The Mac Driver (for Mac Desktop apps)
4、Appium客户端
Appium只是一个HTTP服务器。它坐着等待来自客户端的连接,然后客户端指示Appium启动什么类型的会话,以及一旦会话启动,要执行什么类型的自动化行为。这意味着您永远不会单独使用Appium。您总是必须将它与某种类型的客户端库(或者,如果您喜欢冒险,cURL!)一起使用。
幸运的是,Appium使用与Selenium相同的协议,称为WebDriver协议。只需使用一个标准的Selenium客户端,就可以使用Appium做很多事情。您甚至可能已经在系统中安装了其中一个。这就足够开始了,特别是如果您使用Appium在移动平台上测试web浏览器。
Appium可以做Selenium不能做的事情,就像移动设备可以做web浏览器不能做的事一样。出于这个原因,我们有一组使用各种编程语言的Appium客户端,这些客户端扩展了常规的旧Selenium客户端的附加功能。您可以在Appium客户端列表中查看客户端列表和下载说明的链接。
在继续之前,请确保您有一个用您最喜欢的语言下载的客户端,并准备就绪。
5、启动Appium
现在,我们可以启动Appium服务器,或者从命令行运行它(假设NPM安装成功):
appium
或者单击Appium Desktop中的巨大“启动服务器”按钮。
Appium现在将向您显示一条小的欢迎消息,显示您正在运行的Appium版本以及它正在侦听的端口(默认值为4723)。此端口信息非常重要,因为您必须引导测试客户端确保在此端口上连接到Appium。如果您想更改端口,可以在启动Appium时使用-p标志(请确保查看服务器参数的完整列表)。
相关文章
- QT(2)-QRegExp
QT(2)-QRegExp 1 正则表达式 正则表达式——详情版常用表达式Qt中正则表达式(常用)Qt 正则表达式介绍 QRegExp的使用 2 QRegExp 2.1 indexIn int indexIn(const QString &str, int offset 0, QRegExp::CaretMode caretMode CaretAtZero) const 尝试从位置偏移量(默…...
2023/6/2 7:10:18 - 【C++】-- 继承
目录 继承的概念及定义 继承的概念 继承的定义 定义格式 继承基类成员访问方式的变化 基类和派生类对象赋值转换 子类对象可以赋值给父类对象/指针/引用 派生类对象赋值给基类的对象 派生类对象赋值给基类的指针 派生类对象赋值给基类的引用 继承中的作用域 派生类的默认成员函…...
2023/5/28 6:13:47 - Sedex验厂有证书吗?
【Sedex验厂有证书吗?】 SEDEX 是一个全球性的会员制组织,旨在帮助企业在负责任商业中去繁存简,携手共进。买家、供应商和审计员可以在平台上快速轻松地储存、共享和报告信息。 SMETA(Sedex Members Ethical Trade Auditÿ…...
2023/6/2 18:24:54 - SpringBoot SpringCloud Nacos等一些组件版本对应
毕业版本依赖关系(推荐使用) 由于 Spring Boot 2.4 和以下版本之间变化较大,目前企业级客户老项目相关 Spring Boot 版本仍停留在 Spring Boot 2.4 以下,为了同时满足存量用户和新用户不同需求,社区以 Spring Boot 2.4 为分界线,…...
2023/6/1 18:32:54 - VMware16虚拟机添加硬盘(磁盘)和挂载硬盘(磁盘)
记录:317 场景:在VMware16虚拟机,安装了CentOS 7.9操作系统场景下,添加硬盘(磁盘)和挂载硬盘(磁盘)。 版本: 操作系统:CentOS 7.9 1.机器配置 机器名称:B200;主机名称ÿ…...
2023/6/4 20:45:06 - sketch入门选手如何避坑
Sketch它是为图标设计和界面设计而生的。它是一个优秀的人。UI一站式应用Sketch画布将是无限大小的,每层都支持多种填充模式。Sketch为您提供真正合作设计过程所需的所有工具。从早期创意到像素完美的艺术品,原型清晰,与开发人员交接。Sketch…...
2023/6/1 0:18:45 - Webpack基础使用 + 高级配置【重点!】
http://xxpromise.gitee.io/webpack5-docs/senior/optimizePerformance.html#code-split 笔记好评!!!!一定要把网址记好,真的nice!!!! 只是发博客记录一下,没…...
2023/6/7 18:35:08 - java毕业设计个人博客网站Mybatis+系统+数据库+调试部署
java毕业设计个人博客网站Mybatis系统数据库调试部署 java毕业设计个人博客网站Mybatis系统数据库调试部署本源码技术栈: 项目架构:B/S架构 开发语言:Java语言 开发软件:idea eclipse 前端技术:Layui、HTML、CSS、…...
2023/5/28 18:02:06 - antd常用组件 select,form等
参考代码为typescriptreact 树选择 TreeSelect 下拉选项的父子节点选中不相关 import { TreeSelect } from antd;<TreeSelectshowSearchstyle{{ width: 100% }}treeData{yyIndustryOptions} // treeNodes 数据dropdownStyle{{ maxHeight: 400, overflow: auto }} //下拉…...
2023/6/6 5:12:26 - 基于最小二乘支持向量机(LS-SVM)进行分类、函数估计、时间序列预测和无监督学习(Matlab代码实现)
📝个人主页:研学社的博客 💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,…...
2023/6/1 21:19:40 - 网页信息采集-网页数据采集方法
随着社会不停的发展。人们也是越来越离不开互联网,今天小编就给大家盘点一下免费的网页信息采集,只需要点几下鼠标就能轻松爬取数据,不管是导出excel还是自动发布到网站都支持。详细参考图片一、二、三、四! 企业人员 通过爬取动…...
2023/6/1 3:46:57 - C. Balanced Bitstring(思维+子字符串规律)
Problem - 1405C - Codeforces 一个比特串是一个只由0和1字符组成的字符串,如果这个比特串的每个大小为k的子串都有相同数量的0和1字符(各为k2),那么这个比特串就被称为k平衡的。 给你一个整数k和一个只由0,1…...
2023/6/1 1:45:29 - Android App开发实战项目之给用户推荐旅游信息图片(附源码 简单易懂)
需要全部源码请点赞关注收藏后评论区留言~~~ 一、需求描述 假定用户打开一个旅游App想看看哪里风景比较优美,那么App应当展示各地的风景名声图片,为了让界面不太呆板,可以考虑交错显示风景图片,接着用户向下拉动页面,…...
2023/6/1 11:44:59 - js JSON.stringify() 的简单了解之函数的转换
js JSON.stringify() 的简单了解之函数的转换 在javaScript中 JSON.stringify()的作用就是将javaScript的值转换为JSON字符串。它一共有三个参数: value(必须) : 需要转换的javascript的值。 replacer(可选): 可以为一个函数或者数组&#x…...
2023/5/29 14:45:29 - 2022年11月编程排行榜
2022年11月Tiobe编程排行榜已更新,研一的生涯也快结束,来看一下本月各大编程语言有何新进展: 目录:11月编程排行榜一、榜单情况二、榜单简单的分析一、榜单情况 这里只展示排名靠前的前15名: TOP 10编程语言TIOBE指数…...
2023/6/3 5:01:57 - 设计模式----单例模式
设计模式之单例模式 文章目录设计模式之单例模式一. 简介1. 什么是单例模式?2. 单例模式的应用场景?3. 单例模式的类型?二. 单例模式的几种写法1. 饿汉式2. 懒汉式3. 懒汉式(线程安全性能优化)4. 使用volatile防止指令…...
2023/6/4 19:38:14 - 钙尔奇30周年以行动,力挺中国骨骼健康发展
启动行动力赋能新旅程 近日,2022年度西普会于中国海南博鳌盛大举行。以“构筑患者价值同心圆——二元发展驱动健康产业新增长”为主题,本届西普会的会议内容和参会主体全面升维,从全球视野到中国特色聚合优质资源、拓宽产业边界,…...
2023/5/30 9:23:27 - SpringMVC学习篇(五)
SpringMVC之json数据传递 1.1 准备工作 1.1.1 导入lombok依赖(方便写实体类) <dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId><version>1.18.24</version></dependency>1.1.2 导入mvc js…...
2023/6/5 9:51:36 - Java注解与原理分析
使用的太多,被忽略的理所当然; 一、注解基础 注解即标注与解析,在Java的代码工程中,注解的使用几乎是无处不在,甚至多到被忽视; 无论是在JDK源码或者框架组件,都在使用注解能力完成各种识别和…...
2023/6/2 11:20:42 - Linux-实操篇8-shell脚本编写
一、shell是什么 二、shell脚本如何执行 2.1 新建一个shell脚本 ## 第一步新建一个shell脚本 vim aaa.sh ## 内容如下,#!/bin/bash 表示shell脚本的执行协议,必须要写 #!/bin/bash echo "hello word!!!"2.2 执行方式 方式一:先给…...
2023/6/4 18:06:36
最新文章
- 【C++初学者需要掌握的知识点】
安装和配置C开发环境 安装和配置C开发环境的方法因操作系统和IDE而异,一般包括以下步骤: 下载和安装C编译器下载和安装集成开发环境(IDE),如CodeBlocks、Visual Studio等设置编译器和IDE的环境变量创建和配置项目&am…...
2023/6/9 13:30:54 - 冰蓝科技spire.pdf写入到pdf文件时,中文无法显示的原因
之前在一台电脑上使用冰蓝科技的sprire.pdf插件往pdf文件中写文字,功能已经实现出来了,但是后面这台电脑重新装了系统后,发现之前写入文字的功能又无法显示了,只能显示字母和数字。 经过几天的摸索后,发现原因竟然是电…...
2023/6/9 13:30:39 - Mysql中的Buffer pool
Buffer Pool在数据库里的地位 1、回顾一下Buffer Pool是个什么东西? 数据库中的Buffer Pool是个什么东西?其实他是一个非常关键的组件,数据库中的数据实际上最终都是要存放在磁盘文件上的,如下图所示。 但是我们在对数据库执行增…...
2023/6/9 13:30:17 - Golang context 实现原理与源码解读
0 context入门介绍 context是Golang应用开发常用的并发控制技术,主要在异步场景中用于实现并发协调以及对 goroutine 的生命周期控制,它与WaitGroup最大的不同点是context对于派生goroutine有更强的控制力,它可以控制多级的goroutine。 con…...
2023/6/9 13:30:02 - 易基因:全基因组DNA甲基化和小RNA分析揭示甘蓝型油菜种子的基因组不对称性 | 植物发育
大家好,这里是专注表观组学十余年,领跑多组学科研服务的易基因。 多倍体是被子植物基因组进化中的一种持续现象,有助于现存开花植物的多样性。甘蓝型油菜(Brassica napus)是世界上最重要的被子植物油料作物品种之一&a…...
2023/6/9 13:29:49 - redis的pipeline(附有redisTemplate使用的代码示例)
文章目录 一、介绍二、API1、String2、Hash3、List1)pop删除并返回元素 4、Set1)添加元素2)删除元素3)pop移除并返回几个随机的元素 5、ZSet 三、示例1、List的批量right pop 一、介绍 由于redis是一个高性能的单线程的key-value…...
2023/6/9 13:29:33 - minigpt4 部署踩坑记录
1,最近看网上minigpt4很火,下载下来试一下,把碰到问题记录一下。 2 访问 GitHub - Vision-CAIR/MiniGPT-4: MiniGPT-4: Enhancing Vision-language Understanding with Advanced Large Language Models 下载代码到 centos服务上。 3…...
2023/6/9 13:29:19 - OpenStack部署(五)
OpenStack部署 11. 启动一个实例11.1 获取凭证11.2 创建虚拟网络11.3 创建主机规格11.4 生产环境的规格推荐11.5 生成一个键值对11.6 增加安全组规则11.7 创建块设备存储11.8 创建实例 12. 资源整理12.1 用到的端口12.2 openstack各组件常用命令1. openstack命令2. nova的常用命…...
2023/6/9 13:28:58 - 图像识别的相关资源和学习途径,让你轻松上手
图像识别是一门利用计算机和数学方法来分析和理解图像内容的学科,它在人工智能、机器学习、计算机视觉等领域都有着广泛的应用。图像识别的任务包括识别图像中的物体、人脸、文字、场景等,以及根据图像内容进行分类、检索、分割、生成等操作。图像识别的…...
2023/6/9 13:28:36 - 各种好用免费的身份验证API 大全推荐
运营商二要素:传入姓名、手机号码,校验此两项是否一致。运营商三要素 : 输入姓名、身份证号码、手机号码,验证此三种信息是否一致,返回验证结果、手机归属地、运营商名称。运营商三要素详细版:输入姓名、身…...
2023/6/9 13:28:25 - 【C/C++】内联函数
1. 内联函数简介 内联函数(Inline functions)是一种C编程语言的特性,用于在编译时将函数的代码插入到调用该函数的地方,而不是通过函数调用的方式执行。这样可以减少函数调用的开销,并提高代码的执行效率。 2. 具体用…...
2023/6/9 13:28:06 - 开源 Golang 微服务入门三:ORM 框架 GORM
前言 前两篇笔记分别介绍了 Golang 微服务 HTTP 框架 Hertz 和 Golang 微服务 RPC 框架 Kitex,本文将要介绍面向ORM(持久层)框架 GORM。 官方文档 GORM 是面向 Golang 语言的一种 ORM(持久层)框架,支持多种数据库的接入,例如 MySQL&#x…...
2023/6/9 13:27:47 - 【GlobalMapper精品教程】059:基于las点云创建数字高程地形并二三维着色显示
本文讲述在globalmapper免费中文版中基于地形点云las数据创建数字高程地形、数字高程二三维联动可视化并进行数字高程着色显示。 文章目录 一、加载地形点云las数据二、创建数字高程地形三、数字高程二三维联动可视化四、数字高程着色显示相关阅读:ArcGIS实验教程——实验二十…...
2023/6/9 13:27:35 - 高性能计算前景广阔,真不是瞎说。一文看清高性能计算工程师就业前景 ...
随着科技的不断进步和数据量的爆炸式增长,尤其是大模型时代和AIGC的发展,使得高性能计算成为解决复杂问题和实现创新的重要工具。在这个数字化时代,高性能计算不仅仅是一种技术,更是一个拥有广阔就业前景的领域。 高性能计算的迅速…...
2023/6/9 13:27:22 - [数据结构初阶]顺序表
目录 静态顺序表 动态顺序表 初始化 销毁 尾插 编辑 尾删 头插 头删 Insert erase find查找 顺序表是用一段物理地址连续的存储单元依次存储数据元素的线性结构,一般情况下采用数组存储。在数组上完成数据的增删查改。 静态顺序表 定义结构体࿱…...
2023/6/9 13:27:03 - 如何用Python开发QQ机器人
前言 虽然该文最终是达到以python开发mirai机器人的目的,但起步教程,尤其是环境配置上仍然有大量的相同操作,对其他编程语言仍有借鉴之处 假设你已经安装好了 Java、Python等运行必须的环境 mirai生态 mirai官方生态文档 要使用mirai开发…...
2023/6/9 13:26:52 - Elasticsearch 中文分词器
IK 分词器 我们在ES中最常用的中文分词器就是IK分词器,其项目地址为:https://github.com/medcl/elasticsearch-analysis-ik 下载安装 下载地址: https://github.com/medcl/elasticsearch-analysis-ik/releases 下载时注意和es的版本对应&a…...
2023/6/9 13:26:37 - ChatGPT让沟通更智能、更便捷
ChatGpt是最近引起强烈关注的一种技术,它可以实现聊天机器人,为使用者解决复杂的信息获取和学习任务。但他也不仅仅是一个聊天机器人,它是一种基于深度学习算法的自然语言生成模型,由OpenAI公司开发。它可以模拟人类的对话方式&am…...
2023/6/9 13:26:25 - 【Unity-UGUI控件全面解析】| Layout自动布局组件详解
🎬【Unity-UGUI控件全面解析】| Layout自动布局组件详解一、组件介绍二、组件属性面板2.1 布局元素 (Layout Element)2.2 水平布局组 (Horizontal Layout Group)2.3 垂直布局组 (Vertical Layout Group)2.4 网格布局组 (Grid Layout Group)三、代码操作组件四、组件常用方法示…...
2023/6/9 13:26:09 - Android——使用Service服务实现通信
实验目的: (1)能创建、启动和关闭服务 (2)能实现服务的通信 实验内容及原理: 设计一个服务的具体应用,实现服务的通信 实验设备及实验步骤: 实验设备:WindowsAndro…...
2023/6/9 13:25:28