【机构vip教程】Appium自动化(2):Python+Appium环境搭建

windows下搭建python+appium环境

搭建过程步骤如下:

1、安装jdk并配置好环境变量(jdk版本1.8以上)

2、安装android-sdk并配置好环境变量;具体步骤见:https://www.cnblogs.com/YouJeffrey/p/15243705.html

3、安装安卓模拟器(天天模拟器、genymotion、网易MUMU、原生模拟器等安卓版本4.4以上)

4、安装node.js(官网下载安装最新版本) ;下载地址:http://nodejs.cn/download/

  4.1、找到windows安装包下载并安装

   4.2、点击[next]按钮

  4.3、点击勾选上 I accept the terms in the License Agreement ,再点击[Next]

   4.4、自定义安装路径,在点击[Next]

   4.5、默认点击[Next]

   4.6、点击[install]

   4.7、点击[finish],完成安装

   4.8、打开dos 窗口,验证node.js 是否安装成功;输入命令:node -v

5、安装appium-desktop(官网下载安装最新版本)下载地址:https://github.com/appium/appium-desktop/releases

  5.1、下载windows安装包

   5.2、选择第一个选项;再点击 安装 ;如下图

   5.3、点击完成

  5.4、双击打开Appium客户端,host输入127.0.0.1,Appium默认端口是4723,点击Start Server 开启服务;如下图

6、安装python3.7及以上

7、安装Appium-Python-Client(pip install Appium-Python-Client )

8、安装pycharm

 mac下搭建python+appium环境

可以参考该博客安装:转载至 蓝寅  https://www.cnblogs.com/dream66/p/12372650.html

搭建过程步骤如下:

1、安装jdk并配置好环境变量(jdk版本1.8以上)

2、安装android-sdk并配置好环境变量

3、安装安卓模拟器(天天模拟器、genymotion(需安装VirtualBox)、原生模拟器等安卓版本4.4以上)

4、安装nodejs 下载地址:http://nodejs.cn/download/

5、安装appium-desktop(官网下载安装最新版本)

6、安装python3.7及以上

7、安装Appium-Python-Client(pip install Appium-Python-Client )

8、安装pycharm

验证环境是否安装成功,启动Appium 进行测试

1、在Pycharm中新建一个open_app_01.py文件

示例代码:

复制代码

 1 from appium import webdriver
 2 
 3 des = {'platformName':'Android',
 4        'platformVersion':'6.0.1',  # 填写android虚拟机/真机的系统版本号
 5        'deviceName':'MuMu',      # 填写安卓虚拟机/真机的设备名称
 6        'appPackage':'com.sky.jisuanji',    # 填写被测app包名
 7        'appActivity':'.JisuanjizixieActivity',    # 填写被测试app的入口
 8        'udid':'127.0.0.1:7555',    # 填写通过命令行 adb devices 查看到的udid
 9        # 'unicodeKeyboard':True,       # 支持中文输入
10        # 'resetKeyboard':True,         # 支持重置键盘
11        }
12 
13 driver = webdriver.Remote('http://127.0.0.1:4723/wd/hub',des)

复制代码

2、再打开MuMu模拟器/真机,执行代码后会下载一个appium的插件,(如果有报错信息:An unknown server-side error occurred while processing the command. Original error: Cannot verify the signature of,参考路径:https://www.cnblogs.com/YouJeffrey/p/15271682.html)

 3、看到指定的app打开,代表启动成功,appium环境测试通过。

 总结

如果你对此文有任何疑问,如果你也需要接口项目实战,如果你对软件测试、接口测试、自动化测试、面试经验交流感兴趣欢迎加入我们,加入方式在文章的最后面

  自动化测试相关教程推荐:

2023最新自动化测试自学教程新手小白26天入门最详细教程,目前已有300多人通过学习这套教程入职大厂!!_哔哩哔哩_bilibili

2023最新合集Python自动化测试开发框架【全栈/实战/教程】合集精华,学完年薪40W+_哔哩哔哩_bilibili

测试开发相关教程推荐

2023全网最牛,字节测试开发大佬现场教学,从零开始教你成为年薪百万的测试开发工程师_哔哩哔哩_bilibili

postman/jmeter/fiddler测试工具类教程推荐

讲的最详细JMeter接口测试/接口自动化测试项目实战合集教程,学jmeter接口测试一套教程就够了!!_哔哩哔哩_bilibili

2023自学fiddler抓包,请一定要看完【如何1天学会fiddler抓包】的全网最详细视频教程!!_哔哩哔哩_bilibili

2023全网封神,B站讲的最详细的Postman接口测试实战教学,小白都能学会_哔哩哔哩_bilibili

  总结:

 光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。

​​​

​​​

如果对你有帮助的话,点个赞收个藏,给作者一个鼓励。也方便你下次能够快速查找。

如有不懂还要咨询下方小卡片,博主也希望和志同道合的测试人员一起学习进步

在适当的年龄,选择适当的岗位,尽量去发挥好自己的优势。

我的自动化测试开发之路,一路走来都离不每个阶段的计划,因为自己喜欢规划和总结,

测试开发视频教程、学习笔记领取传送门!!

 

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

是面试官放水,还是公司实在是太缺人?,字节原来这么容易进...

字节是大企业,是不是很难进去啊?” “在华为做软件测试,能得到很好的发展吗? 一进去就有19.5K,其实也没有想的那么难” 直到现在,心情都还是无比激动! 本人211非科班,之前在华为…

嵌入式学习-C++-Day6

思维导图 作业 以下是一个简单的比喻,将多态概念与生活中的实际情况相联系: 比喻:动物园的讲解员和动物表演 想象一下你去了一家动物园,看到了许多不同种类的动物,如狮子、大象、猴子等。现在,动物园里有一…

3年,5年,10年,网工人必看!

你们好,我是老杨。 2023年的职场上,无数人在思考“什么时候才能提前退休”这个问题。 对很多底层网工来说,二三十岁的年纪,距离60岁退休还有30年左右,是不是会觉得有点遥遥无期,毫无盼头? 现…

物奇平台ENC算法开关接口修改方法

物奇ENC算法开关接口修改 是否需要申请加入数字音频系统研究开发交流答疑群(课题组)?可加我微信hezkz17, 本群提供音频技术答疑服务,+群赠送语音信号处理降噪算法,蓝牙耳机音频,DSP音频项目核心开发资料, 1 配置工具 2 代码接口

Ansible fetch 模块 该模块用于从远程某主机获取(复制)文件到本地

这里写目录标题 参数实例查看返回结果在这里插入图片描述 参数 dest:用来存放文件的目录 src:在远程拉取的文件,并且必须是一个file,不能是**目录* 实例 ansible slave -m fetch -a src/data/hello.txt dest/data/可以看到一个…

2024年【安全员-C证】报名考试及安全员-C证考试资料

题库来源:安全生产模拟考试一点通公众号小程序 安全员-C证报名考试参考答案及安全员-C证考试试题解析是安全生产模拟考试一点通题库老师及安全员-C证操作证已考过的学员汇总,相对有效帮助安全员-C证考试资料学员顺利通过考试。 1、【多选题】《工伤保险…

软件实例分享,台球厅收费系统电脑桌球店计时软件及灯控线路图教程

软件实例分享,台球厅收费系统电脑桌球店计时软件及灯控线路图教程 一、前言 以下软件程序教程以 佳易王桌球室计时计费软件V17.0为例说明 软件文件下载可以点击最下方官网卡片——软件下载——试用版软件下载 1、每个桌子对应的有 开台时间,所用的时…

java数据结构与算法刷题-----LeetCode594. 最长和谐子序列

java数据结构与算法刷题目录(剑指Offer、LeetCode、ACM)-----主目录-----持续更新(进不去说明我没写完):https://blog.csdn.net/grd_java/article/details/123063846 解题思路 子序列要尽可能长,并且最大值和最小值之间的差&#…

Python教程(27)——如何使用Python中的上下文管理器

当我们在编写代码时,经常会遇到需要管理资源的情况,比如打开和关闭文件,如果遇到了一些异常情况,我们需要关闭资源,不然会导致资源泄露,虽然我们可以通过手动的方式来关闭,但如果有多个异常情况…

基于Springboot的新能源充电系统(有报告)。Javaee项目,springboot项目。

演示视频: 基于Springboot的新能源充电系统(有报告)。Javaee项目,springboot项目。 项目介绍: 采用M(model)V(view)C(controller)三层体系结构&a…

MyBatisPlus 整合 SpringBoot 遇见的问题

【异常】:Cause: java.sql.SQLSyntaxErrorException: Unknown column ‘udf1’ in ‘field list’… SQL: SELECT id,oper_id,btch_id,udf1, FROM scan_cyber Cause: java.sql.SQLSyntaxErrorException: Unknown column ‘udf1’ in ‘field list’; ,"messag…

OpenHarmony—UIAbility组件与UI的数据同步

基于HarmonyOS的应用模型,可以通过以下两种方式来实现UIAbility组件与UI之间的数据同步。 使用EventHub进行数据通信:基于发布订阅模式来实现,事件需要先订阅后发布,订阅者收到消息后进行处理。使用globalThis进行数据同步&#…

PostgreSQL Error Codes (PostgreSQL错误代码)

Whats PostgreSQL Error Codes PostgreSQL服务器发出的所有消息都分配了五个字符的错误代码, 这些代码遵循 SQL 的"SQLSTATE"代码的约定。 需要知道发生了什么错误条件的应用程序通常应该检测错误代码,而不是查看文本错误消息。 这些错误代码…

Flink介绍

Flink 介绍 文章目录 Flink 介绍1. 简介1.1 背景1.2 用途 2. 核心概念2.1 流(Stream)2.2 转换(Transformation)2.3 窗口(Window)2.4 状态(State) 3. 编程模型3.1 编程模型介绍3.2 程…

Selenium Grid分布式测试环境搭建

Selenium Grid简介 Selenium Grid实际上是基于Selenium RC的,而所谓的分布式结构就是由一个hub节点和若干个node代理节点组成。Hub用来管理各个代理节点的注册信息和状态信息,并且接受远程客户端代码的请求调用,然后把请求的命令转发给代理节…

ansible自动化运维工具及常见模块的使用

目录 一、ansible概述 二、ansible的特性 三、ansible 环境安装部署 管理端安装 ansible: 配置主机清单: 配置密钥对验证: 四、ansible 常见模块的使用 1.command 模块 2.shell 模块 3.cron 模块…

JS进阶——垃圾回收机制以及算法

版权声明 本文章来源于B站上的某马课程,由本人整理,仅供学习交流使用。如涉及侵权问题,请立即与本人联系,本人将积极配合删除相关内容。感谢理解和支持,本人致力于维护原创作品的权益,共同营造一个尊重知识…

Typora+PicGO+腾讯云COS做图床

文章目录 Typora+PicGO+腾讯云COS做图床一、为什么使用图床二、Typora、PicGO和腾讯云COS介绍三、下载Typora和PicGOTyporaPicGO 四、配置Typora、PicGO和腾讯云COS腾讯云COS配置PicGO配置Typora配置 Typora+PicGO+腾讯云COS做图床…

神经网络代码实现

目录 神经网络整体框架 核心计算步骤 参数初始化 矩阵拉伸与还原 前向传播 损失函数定义 反向传播 全部迭代更新完成 数字识别实战 神经网络整体框架 核心计算步骤 参数初始化 # 定义初始化函数 normalize_data是否需要标准化def __init__(self,data,labels,layers,…

Vue3快速上手(七) ref和reactive对比

一、ref和reactive对比 表格形式更加直观吧: 项目refreactive是否支持基本类型支持不支持是否支持对象类型支持支持对象类型是否支持属性直接赋值不支持,需要.value支持是否支持直接重新分配对象支持,因为操作的.value不支持,需…