Appium+python自动化(一)- 环境搭建—上(超详解)

最近整理了一下自动化的东西,先前整理的python接口自动化已经接近尾声。即将要开启新的征程和篇章(Appium&python)。那么首相的问题就是搭建环境了。好久没搭建环境又踩了不少坑,appium的环境搭建比较繁琐,好多同行估计都在环境上被卡死了。所以特此分享一下~~

  appium可以说是做app最火的一个自动化框架,它的主要优势是支持android和ios,另外脚本语言也是支持java和Python。而且现在招聘要求也需要这项技能。还有就是5G时代的到来。各种app借力丛生。所以我们必须掌握这项技能。宏哥擅长Python,所以接下来的教程是appium+python的实例。

  学习appium最大的难处在于环境的安装和搭建,80%的人死于环境安装和搭建,然后就没然后了;10%的人被环境折腾的死去活来,最后夭折;只有剩下的10%人品好,可以顺利安装,一步到位。

一、环境准备

 1、我的环境是Windows 10版本 64位系统(32位的同学自己想办法哦)

    2、1.8.0_181 (64位)

    3、android-sdk_r24.3.4-windows

    4、python:3.7

    5、appium:1.4.16.1

    6、Node.js:node-v10.16.0-x64

    7、Appium-Python-Client

二、jdk安装

    1、下载jdk包,小编的是64位1.8版本,其它高级版本应该也是可以的。根据自己的系统选择对应版本

    2、一路傻瓜式安装,注意安装路径不要有空格,不要有中文。jdk和jre不要放在一个文件夹下

    3、设置三个环境变量,我的电脑>选择“属性”->“高级”->“环境变量”->“系统变量”->“新建”

(1)JAVA_HOME----D:\software\Java\jdk1.8.0_181” (根据自己安装路径填写)

(2)CLASSPATH--- .;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar;

(3)PATH-----;%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;

在path路径下加上面那两个,这里就不多说了

    4、打开cmd验证是否安装成功,输入java -version,然后输入javac

能显示版本号和下面的帮助信息说明安装成功

三、android-sdk下载安装

    1、下载android-sdk,这个是做android测试和开发的必备环境,如果不会下载的话,可以找我要,后期建个群或将其上传上去

  好多人都是直接下载Android Studio,但是如果只是做自动化的话只需要下载Android SDK就行了。

      下载地址:http://tools.android-studio.org/index.php/sdk/(推荐使用)

    2、解压后,里面有个SDK manager.exe双击打开

    3、勾选你要下载的API版本和对应的android版本,后面模拟器会用到(不下载用其它模拟器也行,或者真机),然后坐等下载。安装Tools下的Android SDK Platform-tools和Android SDK Build-tools,Android SDK Tools可以选择是否更新,建议直接更新。镜像:随便选个版本也可以选择多个版本安装,我喜欢直接连接真机进行,由于镜像比较大,所以喜欢真机的朋友们可以不下载镜像,GoogleFQ安装:Extras文件夹下所有的全部安装。

四、android-sdk环境变量

    1、在系统变量新建:ANDROID_HOME,对应变量值为:D:\software\android-sdk-windows(sdk安装路径)

    2、path添加两个变量,将以下箭头所指的两个文件路径添加到path里

    3、path里面添加D:\software\android-sdk-windows\tools和D:\software\android-sdk-windows\platform-tools,或者%ANDROID_HOME%\tools;%ANDROID_HOME%\platform-tools

五、adb环境

    1.因为adb是在D:\software\android-sdk-windows\platform-tools这个目录下的,所以上面添加了环境变量后,可以直接在cmd里面运行了。

   2.在cmd输入adb可以查看对应版本号

六、连接手机

    1.手机用数据线连电脑,如果安装了91助手或者360什么的可以先下载手机驱动,确认手机能连上

    2.打开cmd输入:adb devices,当屏幕上出现一串字符,后面显示devices说明连接成功(出现其它的提示,得检查自己的环境了)

到这里android的测试开发环境已经装好了,下一篇会教搭建搭建appium环境。安装过程中遇到各种奇葩问题,请卸载完后,仔细阅读,从第一行开始,一步一步走下来,中间任何一个环境出问题,都会导致最后appium运行失败。

七、小结

1、搭建编译环境时为什么有时候要设置环境变量,而有时又设置用户变量? 

答:环境变量分为系统环境变量和用户环境变量。 你所说的环境变量是指系统环境变量,对所有用户起作用 。而用户环境变量只对当前用户起作用。


              【下面是我整理的2023年最全的软件测试工程师学习知识架构体系图】


一、Python编程入门到精通

二、接口自动化项目实战

三、Web自动化项目实战


四、App自动化项目实战

五、一线大厂简历


六、测试开发DevOps体系

七、常用自动化测试工具


八、JMeter性能测试

九、总结(尾部小惊喜)

生命不息,奋斗不止。每一份努力都不会被辜负,只要坚持不懈,终究会有回报。珍惜时间,追求梦想。不忘初心,砥砺前行。你的未来,由你掌握!

生命短暂,时间宝贵,我们无法预知未来会发生什么,但我们可以掌握当下。珍惜每一天,努力奋斗,让自己变得更加强大和优秀。坚定信念,执着追求,成功终将属于你!

只有不断地挑战自己,才能不断地超越自己。坚持追求梦想,勇敢前行,你就会发现奋斗的过程是如此美好而值得。相信自己,你一定可以做到!

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

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

相关文章

picard安装时报错“Exception in thread “main“ java.lang.UnsupportedClassVersionError”

最近在通过GATK所介绍的best practice流程来call SNP流程 1.流程 1.1 BWA比对,获得sam文件 1.2 准备用picard来压缩排序sam文件为bam文件,并对bam文件进行去重复(duplicates marking) 这是就需要用到picard软件 按照教程网页上…

Centos安装指定docker版本和docker-compose

目录 一. 直接安装Docker最新镜像源 1. 卸载旧版本的Docker: 2. 安装依赖包: 3. 添加Docker源: 4. 安装Docker: 5. 启动Docker服务: 6. 验证Docker是否安装成功: 二、指定Docker版本安装 1. 查看…

软件设计模式与体系结构-软件体系-调用-返回风格软件体系结构

目录 软件体系结构概述概述 一、调用-返回风格软件体系结构概念代码主程序-子程序软件体系结构自顶向下的设计方法的问题结构化设计的优缺点面向对象体系结构面向对象设计的优缺点主程序-子程序与面向对象体系结构相似差异 课程作业 软件体系结构概述 调用-返回风格软件体系结…

论文 | 一分钟快速找到自己研究领域的核心期刊

进入知网官网 https://www.cnki.net/ 点击搜索框右边的:出版物检索 鼠标放到顶部的 出版来源导航 旁边的倒三角上 选择期刊导航: 点击核心期刊导航 找到自己感兴趣的领域 点进去就可以看到该期刊中发表的论文:

ChatGPT训练流程

图源:State of GPT - Microsoft Build 笔者翻译上图如下: 阶段子阶段目标备注Pre-Training--------语言建模Instruction Finetuning---------让模型能够理解自然语言指令RLHFReward Modeling奖励建模,用来代替人工打分,降低标注…

8-1、Deployment运行应用的机制

Kubernetes 通过各种 Controller 来管理 Pod 的生命周期。为了满足不同业务场景,Kubernetes 开发了 Deployment、ReplicaSet、DaemonSet、StatefuleSet、Job 、 CronJob 等多种 Controller。 用户通过 kubectl 创建 Depl…

数据结构【考研笔记】

数据结构【考研笔记】 第一章 绪论一、数据结构的基本概念1、基本概念1)数据2)数据元素、数据项3)数据对象、数据结构4)数据类型、抽象数据类型(ADT) 2、三要素1)逻辑结构2)存储结构…

【react】插件react-tsparticles和tsparticles实现粒子特效:

文章目录 一、效果图:二、实现思路:三、实现代码:【1】安装依赖【2】 一、效果图: 二、实现思路: particles(npm i react-particles-js)目前已被弃用;取代它的是tsparticles(npm i react-tsparticles 和npm install tsparticles&a…

AI大数据智能视频融合平台EasyCVR新增Ehome黑白名单配置

EasyCVR视频融合平台基于云边端智能协同架构,具有强大的数据接入、处理及分发能力,平台支持海量视频汇聚管理,可支持多协议接入,包括市场主流标准协议与厂家私有协议及SDK,如:国标GB28181、RTMP、RTSP/Onvi…

Springboot启用HTTP响应压缩

官方文档:https://docs.spring.io/spring-boot/docs/2.3.12.RELEASE/reference/htmlsingle/#how-to-enable-http-response-compression

【云原生】k8s之存储卷

容器磁盘上的文件的生命周期是短暂的,这就使得在容器中运行重要应用时会出现一些问题。首先,当容器崩溃时,kubelet 会重启它,但是容器中的文件将丢失——容器以干净的状态(镜像最初的状态)重新启动。其次&a…

VMware 17虚拟Ubuntu 22.04设置共享目录

之前使用VM 17之前的版本虚拟CentOS,设置共享目录非常方便,在CentOS中安装VMware Tools即可。随着CentOS变成上游版本后,转向使用Ubuntu,VM也升级到了17,Ubuntu也升级到了最新的22.04,但是发现共享目录不能…