Appium(一)--- 环境搭建

news2025/1/7 15:34:42

一、Android自动化环境搭建

1、JDK  必须1.8及以上
	(1)  安装:默认安装
	(2)  环境变量配置
			新建JAVA_HOME:安装路径
			新建CLASSPath
			%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar
	        在path中增加:
			%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;
  (3) 验证是否安装好 

如: 在这里插入图片描述

2、Android SDK安装与配置	
(1) 下载:http://www.androiddevtools.cn/
(2) 安装:解压即可
	打开SDK Manager.exe,下载platform-tools、tools安装,安装Google USB Driver
(3) 环境变量配置
	  新建ANDROID_HOME:解压路径
	  在path中增加:
	  %ANDROID_HOME%\platform-tools;%ANDROID_HOME%\tools;
(4) 验证是否安装好:
	  android -h

在这里插入图片描述

3、模拟器
	(1) 模拟器选择:夜神、逍遥、雷电、MuMu、蓝叠等等
	(2) 下载:夜神模拟器 : https://www.yeshen.com/   
		 建议:雷电模拟器  https://www.ldmnq.com/
	(3) 安装:默认安装即可,记住安装路径,后续ADB配置要用到。
	
	注意:很重要  ⭐⭐⭐⭐⭐
	复制android sdk\platform-tools 里面adb.exe,到模拟器里面,替换模拟器的adb.exe

	ADB配置:
	ADB是ANDROID SDK自带的命令行工具,前面装好了Android SDK,所以在这只需要验证ADB能否使用就ok。
	(ADB相当于桥梁,我们 PC计算机(输入命令,控制安卓设备)  ---------ADB(发送命令)  ----------android设备)
	进入cmd,输入adb --version,可以显示adb的版本号就表示adb环境是ok的

在这里插入图片描述
4、ADB连接模拟器
一、ADB连接模拟器----成功
(1) 打开cmd,输入adb devices,查看设备是否连接;显示设备号和device则表示连接成功

	adb devices: 查看当前电脑连接的设备  
	设备的连接状态有4种:device 已连接、
						                  offline 未连接、
						                  unkown 未识别、
						                  unauthorized  未授权

在这里插入图片描述

连接信息解释
(1) 手机设备: 显示设备的序列号
(2) 模拟器:显示ip地址和端口,即127.0.0.1:62001
(3) device:已识别的设备,连接成功
(4) unauthorized:没有授权,需要手机上授权后才能连接--手机上会弹出一个授权框
(5) unknown:未识别的设备----电脑上没有手机的驱动,安装一个手机助手(豌豆荚、91助手),自动安装驱动
(6) offline:离线设备---重新插拔usb

二、ADB连接模拟器----失败
打开cmd,输入adb devices,查看设备是否连接,如下图所示,则表示adb版本有问题。
原因: 模拟器自带了一个ADB,Android SDK也有一个ADB,当两者版本不一致时就会出现如下问题。

在这里插入图片描述

解决:统一ADB版本即可。具体操查看插入附件ADB连接模拟器----成功

5、APP自动化环境部署
(1) Appium服务端--Appium Desktop
(2) Appium客户端--appium-python-client
(3) 脚本编写工具IDE---pycharm

Appium Desktop服务端
(一) Appium Desktop下载地址:https://github.com/appium/appium-desktop/releases
(二) 安装默认安装

在这里插入图片描述

Appium Desktop--基础配置
Appium Desktop的界面有三个选项卡
	(1) Simple:基础配置
	(2) Advanced:高级配置
	(3) Presets:预设配置

在这里插入图片描述
点击startServer,然后点击下图中的放大镜按钮,进入网址如下图2所示,如图3点击asset,找到Appium Inspector下载并安装。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

Appium --http方式进行数据传输
告知Appium连接谁
(1) deviceName 连接设备名称
(2) platformName 操作系统名称
(3) platformVersion 操作系统版本

和软件相关内容
(4) appPackage 被测试的软件(app)包
	问题:如何知道软件包是什么?
	adb shell 进入adb命令界面
	输入 pm list packages 展示所有的软件安装包
	输入 pm list packages -3 展示所有的第三方包
(5) appActivity 被测试的入口(问开发)
	输入dumpsys window windows | grep current -i 找到当前窗口的名字
	也可以通过:获取首次应用的活动名称可以通过 启动一次随机 monkey命令来获取    adb shell monkey -p 包名 -v -v -v 1  名称未cmp 斜杠之后的内容
如qq:

在这里插入图片描述

(6) onRest 是否清除缓存

如下所示:“百度” 填写相应的信息之后,点击"Start Session"
在这里插入图片描述

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

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

相关文章

Framebuffer 驱动

实验环境: 正点原子alpha 开发板 调试自己编写的framebuffer 驱动,加载到内核之后,显示出小企鹅 1. Framebufer 总体框架 fbmem.c 作为Framebuffer的核心层,向上提供app使用的接口,向下屏蔽了底层各种硬件的差异; 准确来说fbmem.c 就是一个字符设备驱动框架的程序,对…

复变函数复习

复数 复数的方根计算 例题: 复变函数 导数 解析函数 调和函数 例题: V是U的共轭调和函数 但U不是V的共轭调和函数 其中U和V满足柯西黎曼方程 经典例题 求解析函数例题: 初等函数 指数函数 对数函数 幂函数 三角函数 级数 极限 收敛半…

在DJI无人机上运行VINS-FUISON(PSDK 转 ROS)

安装ceres出现以下报错,将2版本的ceres换成1版本的ceres CMake did not find one.Could not find a package configuration file provided by "absl" with any ofthe following names:abslConfig.cmakeabsl-config.cmakeAdd the installation prefix of …

HTML5实现好看的博客网站、通用大作业网页模板源码

HTML5实现好看的博客网站、通用大作业网页模板源码 前言一、设计来源1.1 主界面1.2 列表界面1.3 文章界面 二、效果和源码2.1 动态效果2.2 源代码 源码下载结束语 HTML5实现好看的博客网站、通用大作业网页模板源码,博客网站源码,HTML模板源码&#xff0…

线性回归从0到1实践

导入需要的包 from idlelib.configdialog import tracers %matplotlib inline import random import torch from d2l import torch as d2l根据有噪声的线性模型构造一个人造数据集。我们使用线性模型参数 w [ 2 , − 3 , 4 ] T w [2,-3,4]^T w[2,−3,4]T、b4.2 和噪声 ϵ \…

从摩托罗拉手机打印短信的简单方法

昨天我试图从摩托罗拉智能手机上打印短信,但当我通过USB将手机连接到电脑时,我在电脑上找不到它们。由于我的手机内存已达到限制,并且我想保留短信的纸质版本,您能帮我将短信从摩托罗拉手机导出到计算机吗? 如您所知&…

elementui table 表格 分页多选,保持选中状态

elementui多选时分页,解决选中状态无法保留选中项问题: 在el-table标签中加入row-key,row-key的值取当前数据里的唯一key在el-table-column selection 项中加入以下:reserve-selection“true” 完成后,将需要清空的地方 ( 如返回…

《掌握 C/C++ 动态内存管理,让编程更高效灵活》

这里写目录标题 一、回顾C/C内存分布1. 三道基础的练习题2. 内存区域划分图 二、C 语言中动态内存的管理方式(malloc/calloc/realloc/free)1. malloc() 和 calloc() 的区别和注意事项2. realloc() 的用法和注意事项 三、C 中的动态内存管理方式&#xff…

网络安全抓包

#知识点: 1、抓包技术应用意义 //有些应用或者目标是看不到的,这时候就要进行抓包 2、抓包技术应用对象 //app,小程序 3、抓包技术应用协议 //http,socket 4、抓包技术应用支持 5、封包技术应用意义 总结点:学会不同对象采用…

今日头条ip属地根据什么显示?不准确怎么办

在今日头条这样的社交媒体平台上,用户的IP属地信息对于维护网络环境的健康与秩序至关重要。然而,不少用户发现自己的IP属地显示与实际位置不符,这引发了广泛的关注和讨论。本文将深入探讨今日头条IP属地的显示依据,并提供解决IP属…

CSS3——3. 书写格式二

<!DOCTYPE html> <html><head><meta charset"UTF-8"><title></title></head><body><!--css书写&#xff1a;--><!--1. 属性名:属性值--><!--2.属性值是对属性的相关描述--><!--3.属性名必须是…

C# OpenCV机器视觉:双目视觉-深度估计

在一个阳光欢快得仿佛要蹦迪的日子里&#xff0c;阿强像个即将踏上神秘星际旅行的宇航员&#xff0c;雄赳赳气昂昂地坐在实验室那张堆满奇奇怪怪小玩意儿的桌子前。桌上&#xff0c;两台摄像头宛如两个严阵以待的机甲战士&#xff0c;镜头闪烁着冷峻的光&#xff0c;仿佛在向阿…

网络IP协议

IP&#xff08;Internet Protocol&#xff0c;网际协议&#xff09;是TCP/IP协议族中重要的协议&#xff0c;主要负责将数据包发送给目标主机。IP相当于OSI&#xff08;图1&#xff09;的第三层网络层。网络层的主要作用是失陷终端节点之间的通信。这种终端节点之间的通信也叫点…

springboot566健美操评分系统(论文+源码)_kaic

摘 要 健美操评分系统采用B/S架构&#xff0c;数据库是MySQL。系统的搭建与开发采用了先进的JAVA进行编写&#xff0c;使用了springboot框架。该系统从三个对象&#xff1a;由管理员、裁判员和用户来对系统进行设计构建。主要功能包括首页&#xff0c;个人中心&#xff0c;裁…

【深度学习之空洞卷积】空洞卷积和普通卷积的比较包括哪些优势?从感受野、计算复杂度方面分析。

【深度学习之空洞卷积】空洞卷积和普通卷积的比较包括哪些优势&#xff1f;从感受野、计算复杂度方面分析。 【深度学习之空洞卷积】空洞卷积和普通卷积的比较包括哪些优势&#xff1f;从感受野、计算复杂度方面分析。 文章目录 【深度学习之空洞卷积】空洞卷积和普通卷积的比…

【机器遗忘之UNSIR算法】2023年IEEE Trans期刊论文:Fast yet effective machine unlearning

1 介绍 年份&#xff1a;2023 期刊&#xff1a;IEEE Transactions on Neural Networks and Learning Systems 引用量&#xff1a;170 Tarun A K, Chundawat V S, Mandal M, et al. Fast yet effective machine unlearning[J]. IEEE Transactions on Neural Networks and Le…

VSCode 在Windows下开发时使用Cmake Tools时输出Log乱码以及CPP文件乱码的终极解决方案

在Windows11上使用VSCode开发C程序的时候&#xff0c;由于使用到了Cmake Tools插件&#xff0c;在编译运行的时候&#xff0c;会出现输出日志乱码的情况&#xff0c;那么如何解决呢&#xff1f; 这里提供了解决方案&#xff1a; 当Settings里的Cmake: Output Log Encoding里设…

程序的环境(预处理详解)

一.程序的翻译环境和执行环境 在ANSI C&#xff08;标准c&#xff09;的任何一种实现中&#xff0c;存在两个不同的环境。 计算机是能够执行二进制指令的&#xff0c;但是我们写出的c语言代码是文本信息&#xff0c;计算机不能直接理解 第1种是翻译环境&#xff0c;在这个环境…

Kafka 消费者专题

目录 消费者消费者组消费方式消费规则独立消费主题代码示例&#xff08;极简&#xff09;代码示例&#xff08;独立消费分区&#xff09; offset自动提交代码示例&#xff08;自动提交&#xff09;手动提交代码示例&#xff08;同步&#xff09;代码示例&#xff08;异步&#…

解决 :VS code右键没有go to definition选项(转到定义选项)

问题背景&#xff1a; VScode 右键没有“go to definition”选项了&#xff0c;情况如图所示&#xff1a; 问题解决办法&#xff1a; 第一步&#xff1a;先检查没有先安装C/C插件&#xff0c;没有安装就先安装下。 第二步&#xff1a; 打开VS CODE设置界面&#xff1a;文件->…