Appium 自动化测试 —— Appium的环境搭建与设置流程!

青胜软件测试 | Appium 自动化自学篇(2)Appium的环境搭建与设置流程

1、Appium 环境搭建:

学习 appium 最大的难处之一在于环境的安装,安装流程比较繁琐,安装的工具和步骤也较多,以下是基于 Windows 系统下的 Android 手机端的安装流程。就像我们在用 Selenium 进行 web 自动化测试的时候一样,我们需要一个浏览器来执行测试脚本。那么移动端自动化测试,我们同样需要一部 Android 手机(手机需要链接电脑)或者 Android 模拟器。

2、安装前的环境准备 :

在环境搭建前需要检查本机电脑的位数,根据相应位数下载对应的安装包。

需要准备的工具如下:

  • Jdk
  • android-sdk_r24.3.4-windows
  • Python
  • Appium
  • .net Frameword
  • Node.js:node-v4.4.7-x64
  • Appium-Python-Client
  • Android 模拟器
  • SDK platform tools 安装

3、Jdk 安装:

众所周知,Android 是由 Java 语言开发的,所以想开发 Android 应用首先需要 Java 环境, 所以, 我们首先需要安装 Java 环境。(需要安装包的可留言)

注:java 环境分 JDK 和 JRE ,JDK 就是 Java Development Kit.简单的说 JDK 是面向开发人员使用的 SDK,它提供了 Java 的开发环境和运行环境。JRE 是 Java Runtime Enviroment 是指 Java 的运行环境,是面向 Java 程序的使用者,而不是开发者。

(1) 下载:下载 jdk 包,笔者的是 64 位 win10 版本,其它高级版本应该也是可以的。根据自己的系统选择对应版本。

(2) 安装:双击下载的 JDK,设置安装路径,注意安装路径不要有空格,不要有中文。jdk 和 jre 不要放在一个文件夹下。

现在我也找了很多测试的朋友,做了一个分享技术的交流群,共享了很多我们收集的技术文档和视频教程。
如果你不想再体验自学时找不到资源,没人解答问题,坚持几天便放弃的感受
可以加入我们一起交流。而且还有很多在自动化,性能,安全,测试开发等等方面有一定建树的技术大牛
分享他们的经验,还会分享很多直播讲座和技术沙龙
可以免费学习!划重点!开源的!!!
qq群号:310357728【暗号:csdn999】

(3) 环境变量:设置三个环境变量,分别是 JAVA_HOME,CLASS_PASS,PATH,在我的电脑>选择“属性”->“高级”->“环境变量”->“系统变量”->“新建”里设置。

(4) 验证:编辑完成后,需要验证 java 是否安装成功,方法是在 cmd 中输入 java 和 javac,如果显示以下信息,则说明安装成功。java 命令可以运行 class 文件字节码。javac 命令可以将 java 源文件编译为 class 字节码文件。

4、Android-sdk 下载安装:

Android SDK 提供了你的 API 库和开发工具构建,测试和调试应用程序, Android。简单来讲,Android SDK 可以看做用于开发和运行 Android 应用的一个软件。

根据我的验证 adt 和 sdk 都可以用来运行 android 模拟器,所以下载哪个都可以。下载链接中已经标识了系统信息,请根据自己的操作系统下载相应的版本。

扩展理解:

ADT(Android Development Tools):目前 Android 开发所用的开发工具是Eclipse,在 Eclipse 编译 IDE 环境中,安装 ADT,为 Android 开发提供开发工具的升级或者变更,简单理解为在 Eclipse 下开发工具的升级下载工具。adt 只是一个 eclipse 的插件,里面可以设置 sdk 路径。
SDK(Software Development Kit):一般是一些被软件工程 师用于为特定的软件包、软件框架、硬件平台、操作系统等建立应用软件的开发工具的集合。在 Android 中,他为开发者提供了库文件以及其他开发所用到的 工具。简单理解为开发工具包集合,是整体开发中所用到的工具包,如果你不用 Eclipse 作为你的开发工具,你就不需要下载 ADT,只下载 SDK 即可开 发。SDK 可以自己编译,在 linux 环境下通过 make 命令进行,耗时比较长,需要有耐心。我们可以把自己编译的 SDK 通过 ADT 导入 eclipse。在此基础上可以对源码包进行修改,比如修改 android system/app/phone.apk 中的源码。

(1) 下载:好多人直接下载 AndroidStudio,但是如果只做自动化的话只需要下载 Android SDK 就可以了。

(2) AndroidSDK 环境变量:下载成功解压后配置 Android SDK 的环境。如上面新建 JAVA_HOME 一样,新建 ANDROID_HOME,如下:

“我的电脑”右键菜单--->属性--->高级--->环境变量--->系统变量-->新建

5、Node.js 安装:

简单的说 Node.js 就是运行在服务端的 JavaScript。Node.js 是一个基于Chrome JavaScript 运行时建立的一个平台。Node.js 是一个事件驱动 I/O 服务端 JavaScript 环境,基于 Google 的 V8 引擎,V8 引擎执行 Javascript 的速度非常快,性能非常好。

(1) 环境变量:下载获取到安装文件后,直接双击安装文件,根据程序的提示, 完成 nodejs 的安装(一直下一步就行,可以将路径进行修改)。将 Node.js 的安装路径(也就是 node.exe 文件所在的目录)D:\Program Files\nodejs 追加到环境变量 Path 中。

(2)验证:检查一下环境是否配置好,在命令行中输入 npm。

6、.net framework 安装

由于 Appium 是用.net 开发的,所以安装之前需要安装.net framework,否则安装过程中会报错,官网下载下载成功后直接点击安装即可。

7、Appium 安装

(1) 下载:下载当前最新版本为 AppiumForWindows_1_X_XX_1.zip ,注意这是一个 Windows 版本,如果你的电脑为 MAC 请下载 appium-1XX.X.X.dmg。以 Windows 为例,将下载的 AppiumForWindows.zip 进行解压,点击 appium-installer.exe 进行安装。

(2) 环境变量:将安装的 Appium 文件夹所在目录\Appium\node_modules\.bin 添加进 path。

(3)验证:cmd 打开命令行窗口,输入 appium-doctor ,出现以下提示,All Checks were successful ,说明环境配置成功。

8、Python 安装:

(1) 下载:打开 Python 官网网址,双击进行安装。安装完成后,可以看到安装好的 Python 目录,如图

(2) 验证:打开 cmd,输入 Python,即可看到版本信息并进入 Python,如下:

9、Appium-python-client 安装

安装完Python后,我们需要将 Python与appium关联起来。cmd打开命令行窗口,输入:pip install Appium-Python-Client,提示成功就可以了。

10、Android 模拟器安装

当 Android SDK 安装完成之后,并不意味着已经装好了安装模拟器。Android 系统有多个版本,所以我们需要选择一个版本进行安装。

打开解压后的 SDK 文件夹,点击 SDK Manager,双击启动 SDK Manager.exe程序。

点击”create”:

点击”create”:

如果显示屏分辨率比较低的话,尽量选择低分辨率的“Device”。点击“OK”,在 AVD Manager 窗口,点击“Start...”按钮启动 android 模拟器。

因为新虚拟机没了实体键,所以我们可以利用键盘按键来操作 android 虚拟机。

当然, 不能保证你 SDK 可以更新。所以, 这里推荐咨询一下小编会比较好。在 Android SDK Manager 的菜单栏上点击“Tools”---->“Options...” 设置相关代码,如下图:

然后,就可以更新了:

然后,就可以更新了:

11、SDK platform tools 安装

Android SDK Platform-tools 是版本有区别的工具文件夹,里面有 adb 、

aapt、fastboot 等工具包。在 http://AndroidDevTools.cn 网站上找到

AndroidSDK Platform-tools下载链接。

(1)安装:安装 Tools 下的 Android SDK Platform-tools 和 Android SDK Build-tools,Android SDK Tools 可以选择是否更新,建议直接更新。镜像: 随便选个版本也可以选择多个版本安装,由于镜像比较大,所以喜欢真机的朋友们可以不下载镜像,GoogleFQ 安装:Extras 文件夹下所有的全部安装。

(2) Tool 环境变:将下面环境变量添加到 path 中,如下:

变量名:PATH

变量值:

  • %ANDROID_HOME%\tools;%ANDROID_HOME%\platform-tools;
  • %ANDROID_HOME%\build-tools\27.0.3

(3) 验证:检查 Android SDK 是否配置成功,win+r cmd 打开命令行窗口,在命令行窗口中输入 adb –-version:

打开 Windows 命令提示符,通过“appium-doctor”命令检查 appium 环境。如果显示”All Checks ware successful”,则说明环境以及搭建成功。

本次内容就先讲到这里,下一篇我们继续来讲Appium的原理和实际操作为大家讲述一遍。

END今天的分享就到此结束了,点赞关注不迷路!

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

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

相关文章

Python键鼠控制之PyAutoGUI方法

前言 PyAutoGUI 是一个 Python 库,用于在桌面应用程序中自动化鼠标和键盘操作。它提供了一组简单而强大的方法,使得开发者可以编写脚本来模拟用户的鼠标点击、键盘输入以及屏幕截图等操作。PyAutoGUI 可以用于自动化重复性任务、测试 GUI 应用程序、创建…

如何通过3D人脸扫描设备制作一个3D超写实虚拟人?

随着虚拟技术的快速发展,现如今的虚拟人逐渐逼真,比二次元虚拟偶像更接近真人形象的3D超写实虚拟人,拥有着更逼真的面部表情,更完美地融入于虚实画面。 随着3D人脸扫描设备不断发展,大大降低了高难度的3D超写实虚拟人…

Django 模型操作(六)

Django通过Model操作数据库, 不管你数据库的类型是MySql或者Sqlite, Django自动帮你生成相应数据库类型的SQL语句,所以不需要关注SQL语句和类型,对数据的操作Django帮我们自动完成。只要会写Model就可以了。 django使用对象关系映射 (Object Relational Mapping, 简称ORM)框…

FPGA UltraScale GTY 全网最细讲解,aurora 8b/10b编解码,HDMI视频传输,提供vivado工程源码和技术支持

目录 1、前言免责声明 2、我这里已有的 GT 高速接口解决方案3、详细设计方案设计框图视频源选择ADV7611解码芯片配置及采集动态彩条视频数据组包UltraScale GTY 全网最细解读UltraScale GTY 基本结构UltraScale GTY 参考时钟的选择和分配UltraScale GTY 发送和接收处理流程Ultr…

Datawhale聪明办法学Python(task2Getting Started)

一、课程基本结构 课程开源地址:课程简介 - 聪明办法学 Python 第二版 章节结构: Chapter 0 安装 InstallationChapter 1 启航 Getting StartedChapter 2 数据类型和操作 Data Types and OperatorsChapter 3 变量与函数 Variables and FunctionsChapte…

微积分-三角函数

三角函数 在处理微积分问题时,我们不可避免的会遇到三角函数。学会三角函数对于微积分是非常重要的。 基本知识 学习三角函数我们需要先学习一些基本知识。 首先要学习的是弧度的概念。弧度是一种角的度量单位,用于测量角的大小。它是根据角所对的弧长…

羊大师解答,羊奶的中医奇妙之处

羊奶素有“润肺之宝”之称,中医学认为它有着独特的作用和价值。羊奶不仅可以滋润肺部,还能保护肺脏免受外界侵害。在中医理论中,肺为人体之“金”,意味着肺具有极其重要的地位。正常肺气血充足,可以维持人体的正常生理…

Linux --绘制地图投影出现报错:无法成功下载地图背景数据

Linux --绘制地图投影出现报错:无法成功下载地图背景数据 主要原因是由于使用学院集群,该集群无法连接外网,在使用cartopy绘制地图投影时,导致无法成功加载地图背景数据解决方法也很简单,自己手动下载所需要的地形数据…

华清远见嵌入式学习——QT——作业4

作业要求&#xff1a; 代码运行效果图&#xff1a; 代码&#xff1a; 头文件&#xff1a; #ifndef ALARMCLOCK_H #define ALARMCLOCK_H#include <QWidget> #include <QTimerEvent> #include <QTimer> #include <QTime> #include <QTextToSpeech&g…

Github仓库远程操作——简单版

Github远程操作 github仓库简单的远程操作&#xff0c;更多复杂的功能请参考github官方文档 标题 Github远程操作添加公钥到githubGithub仓库远程操作 远程操作之前&#xff0c;先添加本地的公钥到github 添加公钥到github 创建本地ssh公私钥&#xff1a;使用powershell或者gi…

静态HTTP应用的未来趋势与展望

随着互联网的快速发展&#xff0c;静态HTTP应用作为一种简单、快速和安全的Web应用形式&#xff0c;已经得到了广泛的应用。然而&#xff0c;随着技术的不断进步和创新&#xff0c;静态HTTP应用也在不断发展和变化。下面&#xff0c;我们就来谈谈静态HTTP应用的未来趋势和展望。…

PHP+MySQL组合开发众筹系统源码:在线支付+消息通知+完整的代码包 附带完整的搭建教程

互联网的普及和发展&#xff0c;众筹作为一种新型的融资方式&#xff0c;逐渐受到越来越多人的关注和认可。众筹系统作为实现众筹业务的核心工具&#xff0c;其开发和应用对于推动众筹行业的发展具有重要意义。罗峰来给大家分享一款基于PHPMySQL组合开发的众筹系统源码&#xf…

软件测试--selenium安装使用

安装selenium不少人使用pip命令来安装selenium&#xff0c;辛辛苦苦安装完之后&#xff0c;还是不能使用。所以我们可以是直接使用编译器&#xff0c;pycharm直接安装selenium扩展包。 file中点击settings 在Settings中点击Project Interpreter,点击加号就可以安装各种需要的扩…

SD卡无法读取怎么办?详细解决方法分享!

“我的sd卡用了很久&#xff0c;但是不知道为什么无法读取了&#xff0c;尝试了很多种方法我都无法读取到里面的数据。我有很重要的文件保存在里面&#xff0c;想问问有什么方法可以帮助我快速解决这个问题吗&#xff1f;” SD卡是一种非常常用的存储设备&#xff0c;可以用于存…

2023 巅峰之作 | AIGC、AGI、GhatGPT、人工智能大语言模型的崛起与挑战

文章目录 01 《ChatGPT 驱动软件开发》内容简介 02 《ChatGPT原理与实战》内容简介 03 《神经网络与深度学习》04 《AIGC重塑教育》内容简介 05 《通用人工智能》目  录 2023年是人工智能大语言模型大爆发的一年&#xff0c;一些概念和英文缩写也在这一年里集中出现&#xff…

leetcode-24-两两交换链表中的节点(C语言实现)

题目&#xff1a; 给你一个链表&#xff0c;两两交换其中相邻的节点&#xff0c;并返回交换后链表的头节点。你必须在不修改节点内部的值的情况下完成本题&#xff08;即&#xff0c;只能进行节点交换&#xff09;。 示例 1&#xff1a; 输入&#xff1a;head [1,2,3,4] 输出&…

详细了解云堡垒机的作用,提高企业数据信息安全

随着上云企业的不断增加&#xff0c;云上数据安全性成为企业面临的重要问题。为了保障企业的核心数据安全&#xff0c;越来越多的企业采购了云堡垒机来提升数据安全性。今天我们就来详细了解一下云堡垒机的作用&#xff0c;以及如何提高企业数据安全。 一、云堡垒机定义 云堡垒…

Python从入门到精通八:Python文件操作

文件的编码 思考&#xff1a;计算机只能识别&#xff1a;0和1&#xff0c;那么我们丰富的文本文件是如何被计算机识别&#xff0c;并存储在硬盘中呢&#xff1f; 答案&#xff1a;使用编码技术&#xff08;密码本&#xff09;将内容翻译成0和1存入。 编码技术即&#xff1a;…

Redux Toolkit(RTK)在React tsx中的使用

一个需求: header组建中有一个搜索框,然后这个搜索框在其他页面路由上都可以使用:例如这两个图共用顶部的搜索框; 我之前的做法就是组建传值, 在他们header 组建和 PageA ,B 的父级组件上定一个值,然后顶部变化传到父级组件,在从父级组件传到page组件,有点繁琐,现在说一下利用…

纯干货,activiti入门看这一篇就够了‼️‼️

纯干货&#xff0c;activiti入门看这一篇就够了‼️‼️ 详细讲解了一个activiti流程的从生到死&#xff0c;及每个节点数据库表的变化 文章目录 &#x1f4d5;一、编写流程文件&#x1f5a5;️二、部署流程&#x1f516; 三、启动刚刚部署的流程生成流程实例&#x1f9e3; 四…