手把手教零基础小白搭建APP的UI自动化环境
suiw9 2024-11-24 21:37 36 浏览 0 评论
前言
帮助零基础小白一步步搭建UI自动化环境,完成Python+Appium+模拟器/真机的UI自动化环境搭建。
回到顶部
环境准备:
- jdk1.8.0
- sdk
- Node.js
- appium
- python
- Appium-Python-Client
- 雷神模拟器
- pycharm
解释:
安卓系统依赖于java,所以需要安装java环境。
sdk用于与设备连接获取信息(也可以创建模拟器),appium服务会依赖于它
Node.js:Appium是使用node.js实现的,所以Node是解释器,首先需要确认安装好。(Node.js是一个平台,而不是一门语言)安装完后可使用npm(包管理工具)进行安装工具
NET Framework: 由于Appium是用.net开发的,所以安装之前需要安装.net framework,否则安装过程中会报错
Appium-Python-Client用来实现appium的python库,安装后可导入模块,如:from appium import webdriver
回到顶部
java安装及环境变量配置
java安装及环境配置教程:https://www.cnblogs.com/upstudy/p/15940591.html
回到顶部
android-sdk安装及环境变量配置
- 下载android-sdk
链接:https://pan.baidu.com/s/1Zcr35JmDzBUfYi7KGPNwSg
提取码:ss11 - 上述下载的工具为免安装版,可以放到任意位置,找到工具目录中里面有个SDK manager.exe双击打开,
勾选你要下载的API版本和对应的android版本,然后直接下载就可以了。
也可以不选择安卓api,使用其他模拟器也可,如雷神、夜神等。
- 环境变量配置
与java配置一样,新建ANDROID_HOME,然后配置绝对路径 - path中配置对应工具路径: 将%ANDROID_HOME%\tools;%ANDROID_HOME%\platform-tools;加入环境变量Path中;
- 验证 Android SDK是否配置成功,win+r cmd打开命令行窗口,在命令行窗口中输入adb –-version
回到顶部
Node.js安装及环境配置
- 下载地址:https://nodejs.org/en/
- 安装及环境配置
下载安装后>双击安装文件>默认一直下一步进行nodejs的安装即可。(也可以自定义路径) - 验证 node是否配置成功,win+r cmd打开命令行窗口,在命令行窗口中输入node –v
- 一般会安装Node时会自动配置环境变量,如果上述验证不成功则需要手动配置环境变量,需要吧node安装路径配置到path中:
回到顶部
appium安装
方式一:
- 下载地址:
- 服务版:https://appium.io/
- 桌面版:https://bitbucket.org/appium/appium.app/downloads/
- 下载安装后可直接运行appium
方式二:
appium命令行安装:(需要前提安装好了Node)
npm install -g appium
启动appium服务命令:appium
回到顶部
python安装及环境变量配置
【基础】python环境搭建及配置:https://www.cnblogs.com/upstudy/p/16056201.html
回到顶部
appium-Python-Client工具安装
pip进行安装
cmd打开命令行窗口,输入:pip install Appium-Python-Client安装后会提示成功。
验证安装是否成功:
python中输入from appium import webdriver,未报错则表示安装成功。
回到顶部
编写demo验证搭建环境是否正常
1. 运行模拟器,我这里用的是雷神,其他模拟器或真机都可以
2. 验证本机与设备连接情况
命令行中输入adb devices,查看设备连接信息
3. 启动appium服务
4. pycharm中编写测试脚本
devicesName配置为之前adb devices获取到的设备名称,其他根据自己设备具体情况去填写即可。
6. 运行脚本
脚本运行正常,模拟器可正常打开应用程序
回到顶部
可能遇到的问题
- 运行脚本时报sdk缺少apksigner.jar
解决方法:
apksigner.jar的依赖包下载链接:https://pan.baidu.com/s/1laAVkrn2qxcha3FvIX-GMQ
提取码:ss11
下载放到sdk-platform-tools中即可
- adb devices返回127.0.0.1:5555 offline
原因:adb连接安卓模拟器状态时,再次重启时模拟器,会再次出现一个adb.exe进程,此时会出现多了一个127.0.0.1:5555 offline - 解决方法:
- 重启adb,使用此命令: adb kill-server和adb start-server
本文来自https://www.cnblogs.com/upstudy/p/16056142.html
相关推荐
- 俄罗斯的 HTTPS 也要被废了?(俄罗斯网站关闭)
-
发布该推文的ScottHelme是一名黑客,SecurityHeaders和ReportUri的创始人、Pluralsight作者、BBC常驻黑客。他表示,CAs现在似乎正在停止为俄罗斯域名颁发...
- 如何强制所有流量使用 HTTPS一网上用户
-
如何强制所有流量使用HTTPS一网上用户使用.htaccess强制流量到https的最常见方法可能是使用.htaccess重定向请求。.htaccess是一个简单的文本文件,简称为“.h...
- https和http的区别(https和http有何区别)
-
“HTTPS和HTTP都是数据传输的应用层协议,区别在于HTTPS比HTTP安全”。区别在哪里,我们接着往下看:...
- 快码住!带你十分钟搞懂HTTP与HTTPS协议及请求的区别
-
什么是协议?网络协议是计算机之间为了实现网络通信从而达成的一种“约定”或“规则”,正是因为这个“规则”的存在,不同厂商的生产设备、及不同操作系统组成的计算机之间,才可以实现通信。简单来说,计算机与网络...
- 简述HTTPS工作原理(简述https原理,以及与http的区别)
-
https是在http协议的基础上加了一层SSL(由网景公司开发),加密由ssl实现,它的目的是为用户提供对网站服务器的身份认证(需要CA),以至于保护交换数据的隐私和完整性,原理如图示。1、客户端发...
- 21、HTTPS 有几次握手和挥手?HTTPS 的原理什么是(高薪 常问)
-
HTTPS是3次握手和4次挥手,和HTTP是一样的。HTTPS的原理...
- 一次安全可靠的通信——HTTPS原理
-
为什么HTTPS协议就比HTTP安全呢?一次安全可靠的通信应该包含什么东西呢,这篇文章我会尝试讲清楚这些细节。Alice与Bob的通信...
- 为什么有的网站没有使用https(为什么有的网站点不开)
-
有的网站没有使用HTTPS的原因可能涉及多个方面,以下是.com、.top域名的一些见解:服务器性能限制:HTTPS使用公钥加密和私钥解密技术,这要求服务器具备足够的计算能力来处理加解密操作。如果服务...
- HTTPS是什么?加密原理和证书。SSL/TLS握手过程
-
秘钥的产生过程非对称加密...
- 图解HTTPS「转」(图解http 完整版 彩色版 pdf)
-
我们都知道HTTPS能够加密信息,以免敏感信息被第三方获取。所以很多银行网站或电子邮箱等等安全级别较高的服务都会采用HTTPS协议。...
- HTTP 和 HTTPS 有何不同?一文带你全面了解
-
随着互联网时代的高速发展,Web服务器和客户端之间的安全通信需求也越来越高。HTTP和HTTPS是两种广泛使用的Web通信协议。本文将介绍HTTP和HTTPS的区别,并探讨为什么HTTPS已成为We...
- HTTP与HTTPS的区别,详细介绍(http与https有什么区别)
-
HTTP与HTTPS介绍超文本传输协议HTTP协议被用于在Web浏览器和网站服务器之间传递信息,HTTP协议以明文方式发送内容,不提供任何方式的数据加密,如果攻击者截取了Web浏览器和网站服务器之间的...
- 一文让你轻松掌握 HTTPS(https详解)
-
一文让你轻松掌握HTTPS原文作者:UC国际研发泽原写在最前:欢迎你来到“UC国际技术”公众号,我们将为大家提供与客户端、服务端、算法、测试、数据、前端等相关的高质量技术文章,不限于原创与翻译。...
- 如何在Spring Boot应用程序上启用HTTPS?
-
HTTPS是HTTP的安全版本,旨在提供传输层安全性(TLS)[安全套接字层(SSL)的后继产品],这是地址栏中的挂锁图标,用于在Web服务器和浏览器之间建立加密连接。HTTPS加密每个数据包以安全方...
- 一文彻底搞明白Http以及Https(http0)
-
早期以信息发布为主的Web1.0时代,HTTP已可以满足绝大部分需要。证书费用、服务器的计算资源都比较昂贵,作为HTTP安全扩展的HTTPS,通常只应用在登录、交易等少数环境中。但随着越来越多的重要...
你 发表评论:
欢迎- 一周热门
-
-
Linux:Ubuntu22.04上安装python3.11,简单易上手
-
宝马阿布达比分公司推出独特M4升级套件,整套升级约在20万
-
MATLAB中图片保存的五种方法(一)(matlab中保存图片命令)
-
别再傻傻搞不清楚Workstation Player和Workstation Pro的区别了
-
Linux上使用tinyproxy快速搭建HTTP/HTTPS代理器
-
如何提取、修改、强刷A卡bios a卡刷bios工具
-
Element Plus 的 Dialog 组件实现点击遮罩层不关闭对话框
-
日本组合“岚”将于2020年12月31日停止团体活动
-
SpringCloud OpenFeign 使用 okhttp 发送 HTTP 请求与 HTTP/2 探索
-
tinymce 号称富文本编辑器世界第一,大家同意么?
-
- 最近发表
- 标签列表
-
- dialog.js (57)
- importnew (44)
- windows93网页版 (44)
- yii2框架的优缺点 (45)
- tinyeditor (45)
- qt5.5 (60)
- windowsserver2016镜像下载 (52)
- okhttputils (51)
- android-gif-drawable (53)
- 时间轴插件 (56)
- docker systemd (65)
- slider.js (47)
- android webview缓存 (46)
- pagination.js (59)
- loadjs (62)
- openssl1.0.2 (48)
- velocity模板引擎 (48)
- pcre library (47)
- zabbix微信报警脚本 (63)
- jnetpcap (49)
- pdfrenderer (43)
- fastutil (48)
- uinavigationcontroller (53)
- bitbucket.org (44)
- python websocket-client (47)