当前位置: 首页 > news >正文

Appium+Python+Android+Nodejs环境安装

简要说明

篇幅有点长,主要介绍自动化测试环境搭建,本篇幅主要介绍PythonClient调用Appium服务实现自动化,其中NodeJS主要是为了实现通过服务启动Appium服务。下列部分网站下载速度太慢(同时提供CSDN下载地址),科学上网秒下(官方服务器出网并没有限速)。由于整个过程参考太多网友贡献的文档,时间太久没办法找到原始引用,同时获取资源并没有付费,所以全部资源0积分。

JAVA-JDK安装-jdk-17.0.17_windows-x64_bin.exe

  • JDK下载地址:https://www.oracle.com/java/technologies/downloads/#java17-windows
  • CSDN下载地址:https://download.csdn.net/download/yhc13429826359/92202193
  • 下载需要注册账号,此处不做演示,安装过程仅列出必要步骤截图。未列出表示直接下一步即可
  • 配置环境变量JAVA_HOME="Disk:/对应电脑安装目录"
  • 我的电脑>右键属性>高级系统设置,按截图顺序配置即可
  • Win+R》cmd,输入java -version 输出以下内容表示安装且环境变量配置成功,注意是新打开命令行不是用配置环境变量之前已打开的命令行;java -version

安装Android Studio

  • 安装Android SDK - Platform-Tools
  • 下载地址:点击访问-下载 Platform-Tools
  • 创建目录:android_sdk
  • 安装Android SDK - 命令行工具
  • 下载地址:点击下载-Android命令行工具,更详细的配置请参考:点击查看官网介绍配置信息
  • 解压文件,注意文件目录,新增latest文件夹
  • 配置环境变量ANDROID_HOME,以及以上SDK工具bin目录到Path,进入环境变量配置请参考jdk步骤,此处不重复
  • 检查配置是否成功 adb --version
  • 安装Android Studio
  • 官网下载链接 点击下载Android Studio最新版
  • 选择文件夹下一步安装即可
  • 启动Android Studio,第一个界面停留不动3~5秒会弹出此配置,未截图部分下一步即可,配置部分单独截图说明,设置镜像https://mirrors.aliyun.com
  • 先检查镜像地址
  • 以下界面表示可镜像正常,确认正常则配置url并点击确认按钮
  • 选择,自定义安装并点击下一步按钮
  • 选择Android SDK文件夹并点击下一步按钮安装SDK
  • 配置环境变量

Python环境安装-V3.12.4

  • 官方下载地址:https://www.python.org/downloads/windows/
  • CSDN下载地址:https://download.csdn.net/download/yhc13429826359/92202265
  • 选择文件夹下一步安装即可。安装步骤简单故无截图,配置环境变量,注意选择自己的安装文件夹
  • 检查安装是否成功 python --version
  • 设置国内镜像,安装python包才能快速下载
  • pip config set global.extra-index-url "https://mirrors.tuna.tsinghua.edu.cn/pypi/web/simple"
  • 检查全局镜像配置是否成功
  • 假设运行Python报错电脑缺少C++库 点击下载安装 2015 X64C++库
  • Python Appium库安装
  • 命令行 pip3 install Appium-Python-Client 等待安装,出现以下界面则代表成功

  • Python mitmproxy库安装

  • 命令行 再输入 pip3 install mitmproxy 等待安装,出现以下界面则代表成功。用于代理抓包,自动化测试一般用于拦截或修改消息体查看界面不同

  • 运行命令检查安装是否成功,mitmproxy --version

安装Appium客户端

  • Github下载地址:https://github.com/appium/appium-desktop/releases
  • CSDN下载地址:https://download.csdn.net/download/yhc13429826359/92203780
  • 双击下一步安装即可,安装之后启动,出现以下界面表示安装成功

安装appium-inspector定位器客户端

  • Github下载地址:https://github.com/appium/appium-inspector/releases/tag/v2025.8.2
  • CSDN下载地址:https://download.csdn.net/download/yhc13429826359/92203797
  • 根据自己电脑配置选择适配安装包,双击下一步安装即可,出现以下界面表示安装成功

安装NodeJS

  • 官方下载地址:https://nodejs.org/zh-tw/download/
  • 选择磁盘文件夹进行安装,下一步下一步即可
  • 安装成功,检查安装配置是否正确,命令行输入node -v 和npm -v 输出对应版本表示配置正确
  • 配置环境 在安装目录下创建"node_cache"和"node_global" 文件夹并配置

  • 管理员身份运行命令行:这一步不要漏

  • 执行命令1:npm config set prefix "D:\soft\nodejs\node_global" 回车,注意换自己文件夹

  • 执行命令2:npm config set cache "D:\soft\nodejs\node_cache" 回车,注意换自己文件夹

  • 执行命令3:npm config get prefix  根据打印检查配置是否成功

  • 执行命令4:npm config get cache  根据打印检查配置是否成功

  • 配置环境变量 (安装程序根目录是安装程序自动加入环境变量)

  • NODE_PATH=D:\soft\nodejs\node_global\node_modules 注意最后一个文件夹默认没有则自己创建

  • D:\soft\nodejs\node_modules

  • D:\soft\nodejs\node_global

  • %NODE_PATH%

  • 执行命令:npm install express -g // -g代表全局安装

  • 设置国内镜像

  • 输入命令1:npm config set registry http://registry.npm.taobao.org (管理员身份命令行)

  • 输入命令2检查配置是否正确:npm config get registry

  • 安装Appium Server

  • 管理员身份执行命令:npm install -g appium

  • 执行命令检验是否安装成功:appium --version

  • 安装uiautomator2驱动

  • 管理员身份执行命令:appium driver install uiautomator2

  • 管理员身份执行命令:npm install -g appium-uiautomator2-driver

  • 管理员身份执行命令-查看已安装驱动确认是否正确:appium driver list --installed

Appium Server 注册为Windows服务(此步骤可选)

  • 工具WinSW v2.12.0下载地址 https://github.com/winsw/winsw/releases
  • CSDN下载地址:
  • WinSW-x64.exe重命名为appium-service.exe放入安装文件夹,后续每次服务启动会调用此程序,所以不能删除
  • 创建appium-service.xml配置文件,并完成以下配置,然后保存到appium-service.exe同一个目录
  • 注意有三个地方对应文件目录修改为自己电脑对应目录
  • <service><id>Appium_1.0</id><name>Appium Server1.0</name><description>Automated mobile app testing service</description><executable>node</executable><arguments>"D:\soft\nodejs\node_global\node_modules\appium\build\lib\main.js"--address 127.0.0.1 --port 4723 --session-override  --base-path /wd/hub--log D:/soft/nodejs/log/appium_log.log--session-override</arguments><log mode="roll-by-size"><sizeThreshold>10240</sizeThreshold><keepFiles>8</keepFiles></log><workingdirectory>D:\soft\nodejs\node_global\node_modules\appium</workingdirectory><env name="ANDROID_HOME" value="D:\soft\android_sdk"/><onfailure action="restart" delay="10 sec"/>
    </service>
  • 管理员身份执行安装命令:注意要使用powerShell,出现以下界面表示安装成功
  •  cd D:\soft\appium_service //进入安装目录dir //查看文件是否在此目录下./appium-service.exe install //安装服务

  • 假设安装过程中出现配置参数错误,但服务安装正确需要卸载再安装注意事项
  • appium-service.exe install //卸载服务命令,注意卸载之后需要重启电脑再执行安装否则出错,不重启有动手能力的可以自行清理注册表即可//另外启动关闭服务,查看服务状态,注意修改为自己的服务名称
    net start Appium_1.0
    net stop Appium_1.0
    sc query Appium_1.0

  • 启动服务:Win+R 输入命令 services.msc 回车,找到服务右键启动,并到安装目录查找日志
  • 命令行启动appium server找到插件目录,注意此处需要先关闭上一步启动服务因为端口冲突
  • appium --address 127.0.0.1 -p 4723 --session-override  --base-path /wd/hub --log D:\appium_log.log

  • 再次启动服务查看日志分析插件是否加载,确认以下加载则配置成功
  • 至于这一步为什么要复制而不是改配置,此处没有找到修改配置的位置,而且配置是相对路径,无法设置绝对路径,故采取复制插件到指定目录解决此问题更方面;
  • 1

配置手机测试安装服务能否正常连接

  • 手机相关配置如下
  • 开启开发者模式,开发者模式内设置允许USB调试,允许安装app,注意手机重启之后需要重新开启开发者模式和USB调试

  • 插入USB 选择仅充电,选择允许授权调试,全部选择允许或同意

  • 首次运行服务提示安装app全部选择同意

  • 三个安装包:Appium Settings, io.appium.uiautomator2.server, io.appium.uiautomator2.server.test  A.应用管理 允许自启动、允许关联启动、允许后台活动;    B. 省电策略:无限制

  • 完成以上步骤之后打开命令行 adb devices,确保设备已加载

  • 开启Appium Server

  • 开启Appium Inspector定位器,至此安装成功

  • {"platformName": "Android","appium:deviceName": "MQS7N19529019921","appium:automationName": "UiAutomator2","appium:newCommandTimeout": "3600"
    }
  • 1

ADB 常用命令

  • adb devices 查看已挂载设备

  • adb shell getprop ro.build.version.release 查看android版本号

  • adb -s MQS7N19529019921shell getprop ro.build.version.release 获取MQS7N19529019921设备指定版本号

  • adb shell pm list packages 查看全部安装应用 包名

  • adb shell pm list packages >a.txt输出到文件

  • adb shell monkey -p com.android.browser -c android.intent.category.LAUNCHER 1 启动应用

  • adb shell input keyevent 3 回到首页

  • adb shell am force-stop com.example.app 关闭指定app

http://www.dtcms.com/a/532048.html

相关文章:

  • SCDN:互联网时代网站安全的安全保障
  • Linux小课堂: Apache服务在CentOS上的安装与基础配置指南
  • Gorm(八)预加载方式
  • 网站开发与设计的实训场地WordPress无法自动推送
  • 【找指针数组最大值】2022-11-24
  • 自己做网站能赚钱吗做spa的网站怎么推广
  • 网络管理中的名词
  • gitlab配置git的ssh秘钥
  • 机器狗进化论:当“园区跑腿”遇上具身智能,一场静悄悄的变革正在发生
  • 江宁区建设工程质量监督站网站学校网站源码开源
  • Docker LXC深度解析:从基础概念到实战演练
  • Spring Boot3零基础教程,docker 批量安装软禁,笔记68
  • 【C语言】函数栈帧的创建和销毁
  • 架构的尺度:从单机到分布式,服务端技术的深度演进
  • 优秀国内个人网站网址网站设计需要那些模块
  • 【ARM驱动】【FreeROTS移植到ARM驱动平台介绍】
  • BELLE中的表1
  • go-ethereum core之交易索引txIndexer
  • 描述对于营销型网站建设很重要飘红效果更佳信阳做网站 汉狮网络
  • 油猴脚本学习1——元数据头部
  • mysql 如何让事件执行
  • PantherX2 debain/armbian Jellyfin10.10.7升级10.11启动后无法监听端口8096的解决办法
  • 网站建设利弊中山币做网站公司
  • Kaleidoscope for mac 文件对比工具
  • LeetCode 1901.寻找峰值2
  • 沈阳建设网站费用北京网站优化软件
  • 【Android】【底层原理】深入解析SELinux模块
  • 阮一峰《TypeScript 教程》学习笔记——注释指令
  • 最好的开发网站建设价格app免费制作平台下载
  • 供应链进销存源码uniapp全开源ERP多仓库管理系统pc+app手机端