搭建Appium工具环境

1、安装Java Development Kit(JDK)

前往Oracle官网下载JDK。

在https://www.oracle.com/java/technologies/javase-jdk11-downloads.html 找到最新版本的JDK。根据操作系统选择适合的版本,并根据指示下载安装程序。

安装JDK。运行下载的安装程序,并按照指示进行安装。

配置JAVA_HOME环境变量。打开系统环境变量设置,创建一个名为JAVA_HOME的新变量,并将JDK的安装路径设置为变量值。确保将该路径添加到系统的PATH变量中。

可以参考截图,进行JDK环境变量配置操作。

在这里插入图片描述

测试jdk环境变量配置是否正确。

如下截图所示能够查询出版本号信息,证明环境变量配置正确。

图片

2、安装Android Studio及Android SDK

前往Android Studio官网(https://developer.android.com/studio)下载最新版本的Android Studio。

安装Android Studio。运行下载的安装程序,并按照指示进行安装。这将同时安装Android SDK。

配置Android SDK路径。启动Android Studio后,点击“Configure”按钮,选择“SDK Manager”选项。在打开的窗口中,找到“Android SDK Location”字段并复制SDK路径。

可以参考截图,进行SDK环境变量配置操作。

图片

图片

测试SDK环境变量配置是否正确。

拿查看%ANDROID_HOME%\platformtools下的adb版本号来证明SDK环境变量配置是否正确。

如下截图所示能够查询出版本号信息,证明环境变量配置正确。

图片

3、安装Node.js

前往Node.js官网(https://nodejs.org/),下载最新版本的Node.js安装程序。

安装Node.js。运行下载的安装程序,并按照指示进行安装。

安装完毕后一般会自动配置环境变量。

然后,测试node环境变量配置是否正确。

图片

4、安装Appium

打开命令行窗口。可以在Windows系统中使用命令提示符(CMD),在Mac系统中使用终端。

执行以下命令来安装Appium:

npm install -g appium

5、安装Appium Server

Appium依赖于Appium Server进行测试,因此需要安装并启动Appium Server。

在命令行窗口中,执行以下命令来安装Appium Server:

npm install -g appium

6、配置Appium环境变量

配置ANDROID_HOME环境变量。打开系统环境变量设置,创建一个名为ANDROID_HOME的新变量,并设置为Android SDK的路径。

配置APPIUM_HOME环境变量。打开系统环境变量设置,创建一个名为APPIUM_HOME的新变量,并将Appium安装目录的路径设置为变量值。

完成以上步骤后,Appium工具环境就安装完成了,可以使用Appium来进行移动应用的自动化测试和开发。

最后感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:

这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你! 

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

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

相关文章

Unknown error 1054

MySQL错误1054是“Unknown column”的错误,意味着在查询或语句中引用了一个不存在的列名。这通常是因为在查询中指定了一个不存在的列名。 解决步骤: 检查列名的拼写:确保在查询或语句中正确地输入了列名。检查大小写,确保与数据…

动静分离+多实例实验(nginx+tomcat)

Nginx服务器:192.168.188.14:80 Tomcat服务器1:192.168.188.11:80 Tomcat服务器2:192.168.188.12:8080 192.168.188.12:8081 部署Nginx负载均衡器 关闭防火墙 systemctl stop firewalld setenforce 0 安装依赖 yum -y install pcre-dev…

Java 基础学习(二)运算符与分支流程控制

1 运算符 1.1 运算符概述 1.1.1 运算符概述 运算符是一种告诉计算机执行特定的数学或逻辑等操作的符号。Java运算符号包括:数学运算符、关系运算符、逻辑运算符、赋值运算符号、字符串连接运算符。计算机本质上只能处理数字,处理数字的最常见的方式就…

csrf跨站请求伪造详解

【1】csrf跨站请求伪造的解释及解决方法 CSRF(Cross-Site Request Forgery)跨站请求伪造是一种常见的网络攻击方式。攻击者通过诱导受害者访问恶意网站或点击恶意链接 将恶意请求发送到目标网站上利用受害者在目标网站中已登录的身份来执行某些操作从而…

华夏ERP信息泄露漏漏洞复现 [附POC]

文章目录 华夏ERP信息泄露漏漏洞复现 [附POC]0x01 前言0x02 漏洞描述0x03 影响版本0x04 漏洞环境0x05 漏洞复现1.访问漏洞环境2.构造POC3.复现 0x06 修复建议 华夏ERP信息泄露漏漏洞复现 [附POC] 0x01 前言 免责声明:请勿利用文章内的相关技术从事非法测试&#x…

好用的基于layui的免费开源后台模版layuimini

发现一个好用的后台模版 基于layui的免费开源后台模版layuimini layuimini - 基于Layui的后台管理系统前端模板 easyadmin开源项目 EasyAdmin是基于ThinkPHP6.0Layui的快速开发的后台管理系统。 演示站点 演示地址:跳转提示(账号:admin&a…

Java实现—数据结构 1.初识集合框架

一、什么是集合框架 Java集合框架,又被称为容器,是定义在java.util包下的一组接口interfaces和其实现类classes 其主要表现为将多个元素element置于一个单元中, 集合框架是由若干个类组成的,每个类的背后就是一种数据结构&…

Jupyter Markdown 插入图片

首先截图 注意 这一步是关键的!! 它需要使用电脑自带的截图,用qq啊vx啊美图秀秀那些都不行哦。 截图之后复制: 然后快捷键粘贴到jupyter里面,它会生成一段代码(没有代码就是说截图形式不对)&a…

【数据结构】线段树

目录 1.概述2.代码实现2.1.聚合操作——求和2.2.聚合操作——求和、求最小值、求最大值 3.应用4.与前缀和之间的区别 更多数据结构与算法的相关知识可以查看数据结构与算法这一专栏。 1.概述 (1)线段树 (Segment Tree) 是一种二叉树形数据结构&#xff…

linux 用户级别修改文件句柄数不生效

修改/etc/security/limits.conf 句柄数后发现无效需要执行以下操作。 1. vi /etc/ssh/sshd_config 2. StrictModes no/yes 3. UsePAM yes 4. service sshd restart 5. /etc/systemd/user.conf 新增DefaultLimitNOFILE65535 6. /etc/systemd/system.conf 新增DefaultLimitN…

logback-spring.xml的内容格式

目录 一、logback-spring.xml 二、Logback 中的三种日志文件类型 一、logback-spring.xml <?xml version"1.0" encoding"UTF-8"?> <configuration scan"true" scanPeriod"10 seconds" ><!-- <statusListener…

C#使用WebSocket进行链接

C#使用WebSocket进行网络链接&#xff0c;和服务端搭建一个长连接进行通信。 有两种方式&#xff1a;串口方式&#xff08;SerialPort&#xff09;和网口方式&#xff08;Socket 包括&#xff1a;TcpClient和UdpClient&#xff09; 准备&#xff1a; 1.C#使用WebSocket的一种…

《100 Java Mistakes and How to Avoid Them》笔记 1

这几日在阅读 Manning 出版社的 《100 Java Mistakes and How to Avoid Them》, 其中列举的确实是一些容易带入到代码中的错误&#xff0c;不少还是通过代码 Review 或单元测试很难发现的问题。也有些看似很弱智&#xff0c;却可能是隐匿许久的定时炸弹&#xff0c;只等某一特定…

pandas教程:Advanced GroupBy Use 高级GroupBy用法

文章目录 12.2 Advanced GroupBy Use&#xff08;高级GroupBy用法&#xff09;1 Group Transforms and “Unwrapped” GroupBys&#xff08;组变换和无包装的GroupBy&#xff09;2 Grouped Time Resampling&#xff08;分组时间重采样&#xff09; 12.2 Advanced GroupBy Use&a…

图形编辑器开发:快捷键的管理

大家好&#xff0c;我是前端西瓜哥。 快捷键操作在图形编辑器中是很高频的操作&#xff0c;能让用户快速高效地执行特定命令&#xff0c;今天讲讲图形编辑器如果管理快捷键。 编辑器 github 地址&#xff1a; https://github.com/F-star/suika 线上体验&#xff1a; https://b…

计算机网络:网络层

0 本节主要内容 问题描述 解决思路 1 问题描述 两大问题&#xff08;重点&#xff0c;也是难点&#xff09;&#xff1a; 地址管理&#xff1b;路由选择。 1.1 子问题1&#xff1a;地址管理 网络上的这些主机和节点都需要使用一种规则来区分&#xff0c;就相当于是一种身…

说说过量 tcp pure ack 的利弊

tcp 的 ack 实在太多了&#xff0c;如果互联网上 80% 报文是 tcp&#xff0c;那么其中 1/3 的报文都是 ack&#xff0c;此前写过几篇短文&#xff0c;比如 丢弃一些 pure ack 和 注入或利用 pure ack。 简单说&#xff0c;tcp 依靠 ack 提供 self-clock&#xff0c;发送 data …

ARM异常模型

快速链接: . 👉👉👉 个人博客笔记导读目录(全部) 👈👈👈 付费专栏-付费课程 【购买须知】:【精选】ARMv8/ARMv9架构入门到精通-[目录] 👈👈👈 — 适合小白入门【目录】ARMv8/ARMv9架构高级进阶-[目录]👈👈👈 — 高级进阶、小白勿买【加群】ARM/TEE…

Docker和Kubernetes:区别与优势对比

在现代软件开发和部署中&#xff0c;Docker和Kubernetes是两个备受关注的技术。本文将对Docker和Kubernetes进行比较&#xff0c;探讨它们的区别和各自的优势。 引言 在过去的几年中&#xff0c;容器技术得到了迅速的发展&#xff0c;并且在现代软件交付和部署中扮演着越来越重…

LVS-DR实验

实验前准备 DR服务器&#xff1a;192.168.188.11 192.168.188.15 NFS服务器&#xff1a;192.168.188.14 Web服务器1&#xff1a;192.168.188.12 Web服务器2&#xff1a;192.168.188.13 Vip&#xff1a;192.168.188.188 客户端&#xff1a;192.168.188.200 配置负载均衡调度…