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

python自动化005:app自动化入门环境搭建

原理:Python脚本将代码给到Appium, Appium将Python脚本编译成ADB命令给到手机, 手机接收到ADB后, 根据ADB命令来操作手机。Appium相当于是一个中间软件,将脚本转换成手机认识的ADB,最终达到操作手机的目的。

环境说明:Python+Appium+模拟器。接下来开始教程......

第一步:安装python和pycharm

        这两个工具安装相对简单,这里就不描述了

第二步:配置好java jdk环境

       这个需要安装16.0.2这个版本,不要安装比16高的版本,否则后续配套的软件可能会不适配而引起失败。对于自动化来说, 只要能实现自动化过程即可,无需为最新版本而纠结。安装过程比较简单,请看此篇文章安装就行:https://www.cnblogs.com/FBGG/p/15103119.html

如果已经安装好了, 验证一下是否可用,cmd命令输入:java --version  和  javac --version  能看到如下版本号则说明OK了。

第三步:安装Android SDK环境

        下载android SDK-夸克网盘链接:https://pan.quark.cn/s/ef081d15e1fc 。下载完后, 将文件解压到某一个路径中,注意解压路径不能有中文, 解压后文件如下

然后配置Android SDK环境变量,进入电脑的环境变量,在(系统变量)新建名称为:ANDROID_HOME;值是上面Android sdk 的解压路径,注意路径不能有中文

在path变量中增加"platform-tools"和"tools"所在路径

然后用cmd命令来验证一下是否配置成功,cmd输入"adb version",出现以下版本号说明安装成功

第四步:运行sdk下"SDK Manager.exe"文件,下载6个工具包。

首先得清空系统默认勾选17个内容

然后勾选以下6个工具包

然后点击安装

安装以下图片来勾选上

等待它安装完成

第五步:安装Appium

打开下载网址:http://appium.io/  选择exe或zip文件下载都行,建议exe下载,方便。

下载完成后点击exe程序运行

安装完成后打开,会得到如下图,选择View可以切换中文

点击“编辑配置”,如果能看ANDROID_HOME和JAVA_HOME框内有默认值,则说明上面所配置的变量是成功的, 如果没有出现默认值,则需要检上面的ANDROID_HOME和JAVA_HOME变量配置

第六步:配置测试机环境

建议:这里建议使用"模拟器"而不是手机,因为如果你的测试用例里面如果涉及到操作手机"设置",比如说打开WiFi会报错,除非你的手机Root,Root手机是一个比较麻烦的一个过程,除非项目要求必须用手机。

6.1、安装夜神模拟器,这个可以在网上搜索下载(这里推荐使用夜神,兼容性比较好),然后将设置调整如下图,要注意的是分辨率不要调太高,否则有可能会卡,其它按电脑性能来配置

6.2、 按照下图, 打开USB调试功能

6.3、cmd输入"adb devices", 如果出现如下,则说明夜神模拟器安装成功

第七步:用Python脚本操作模拟器

7.1、 启动Appium

7.2、在Pycharm中下载Appium包,注意这里必须是2.11.1版本,其他版本可能会导致报错,命令:pip install appium-python-client==2.11.1

7.3、在pycharm中填写以下代码

from appium import webdriver# 定义一个字典,告诉系统我要操作哪个(设备、系统、app、界面)
desired_caps = {# 设备名称'deviceName':'127.0.0.1:62001',# 系统名称'platformName':'Android',# 需要操作的app名称'appPackage':'com.android.settings',# 需要操作的界面'appActivity':'.Settings$WifiSettingsActivity'}# appium的(服务器)和(客户端)之间通信地址
appium_url = 'http://127.0.0.1:4723/wd/hub'# 创建连接
driver = webdriver.Remote(appium_url, desired_caps)# 关闭链接
driver.quit()

右键运行,观察夜神模拟器,如果能自动打开(设置)进入(wifi)界面, 则说明基础环境已经配置正确

设备名称:在cmd命令中输入"adb devices"可以得到

系统名称:安卓(Android),苹果(iOS)

需要操作的app、需要操作的界面:cmd中输入命令"adb shell dumpsys window windows | findstr mFocusedApp" 获得。斜杠前面是app名, 后面是所在界面。这个命令需要配合模拟器获取,它相当于是获取当前模拟器当前界面所在app和界面名称

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

相关文章:

  • 云南品牌网站开发番禺建设网站开发
  • HarmonyOS:线性布局(Row/Column)
  • 鸿蒙Next学习解析之针对PC2in1设备的窗口管理新增支持主窗的尺寸记忆功能
  • 【大数据技术02】统计学和模型
  • Python数据挖掘之回归
  • 数据管理技术发展的3个阶段
  • 进网站后台显示空白购买东西网站怎么做
  • 做网站的公司都有哪些模板制作方法
  • .NET线程池ThreadPool.QueueUserWorkItem
  • Python爬虫进阶:面向对象设计与反爬策略实战
  • 河北省建设厅网站站长万网主体新增网站备案需要是滴么
  • windows 11 系统 nvm安装详细教程 (踩坑分享)
  • VMMap 学习笔记(8.3):VMMap 窗口全解析——内存类型、指标含义、颜色视图怎么读
  • 西安网站建设开发公司怎么样1688网
  • 南京做网站品牌2018 84号建设厅网站
  • 整体设计 全面梳理复盘 之29 Transformer 九宫格三层架构 Designer 全部功能定稿(初稿)
  • 再看软考与职称及软考的价值
  • pycharm连接远程服务器
  • libstdc++.so.6 version `GLIBCXX_3.4.29‘ not found
  • STM32 ADC底层原理与寄存器配置详解
  • 互联科技行业网站wordpress+纯净主题
  • 短剧广告联盟APP盈利模式分析:B 端合作商如何通过系统实现收益增长
  • 「腾讯云NoSQL」技术之向量数据库篇:自研分布式向量数据库,实现毫秒级时序一致备份的挑战和实践
  • seo站长助手网站设计师加油站
  • 基于Springboot的游戏后台管理系统a803t(程序、源码、数据库、调试部署方案及开发环境)系统界面展示及获取方式置于文档末尾,可供参考。
  • springboot在线课堂教学辅助系统07741
  • 成都网站制作中国互联国家企业信用信息公示系统山东
  • C++ 哈希
  • Rust编程问题修复:如何解决“no method named partition_at_mut found”错误
  • OrangePi(运行 Ubuntu 22.04)安装 ROS 2 Humble