搭建Android自动化python+appium环境

一. 需要软件

  1. JDK:JAVA安装后配置JDK环境

  2. SDK:SDK下载后配置adb环境

  3. Python:pyhton语言

  4. Pycharm:python脚本编译工具

  5. Appium-python-client:pyhton中的库

  6. Appium客户端

二. 搭建步骤

1.配置JDK环境

①. 下载安装java:

https://www.oracle.com/java/technologies/javase-jdk14-downloads.html

②. 在安装的时候需要注意,java和jre分开两个目录安装.否则会出现问题

③. 配置环境:

电脑右击-->属性-->高级系统设置->环境变量:

在系统变量中录入java和jre目录:也可以参考百度解决配置问题

2.配置SDK环境:

①. 下载SDK:

https://android-sdk.en.softonic.com/

②.配置

SDK下载后,不用安装,解压缩配置即可.

在系统变量中->path中录入platform-tools和tools目录,也可以百度解决。

3.下载安装python

①.下载:下载对应系统的版本

https://www.python.org/

②. 安装,安装的时候需要注意勾选add pyhton to path,这样可以自动配置环境变量

③. 在CMD中输入pyhton回车显示pyhton版本即可表明安装和配置成功

4.Pycharm下载安装

①. 下载:https://www.jetbrains.com/pycharm/

②. 安装的时候需要注意勾选适当的快捷方式,有32位和64位,根据自己的系统选择

③. 打开pycharm新建工程时要会配置interpreter,可以在新建工程的时候配置,也可以在file-->settings中配置

④. 配置后就可以打开进行编程了

5.安装Appium-python-client库

这个可以分两个方法:

①. 在cmd中安装:进入cmd中,输入pip install Appium-python-client,等待安装完成就可以

②. 在pycharm中file-->settings-->工程中选择project interpreter,在package列表的右上角有+.点击,然后搜索Appium-python-client,点击窗口下方的install package,等待安装完成即可

6.Appium客户端:

①. 下载:http://appium.io/

②. 一般进行默认安装即可

三. 手机配置

  1. 打开开发者模式

  2. 启用USB调试模式

  3. 在CMD中,输入adb devices能够识别手机信息表示成功

  4. 打开SDK->tools中的uiautomator.bat文件,就可以对手机上的元素进行定位操作了

四. 代码实现

  1. 打开pycharm

  2. 安装的库需要导入才能使用:from appium import webdriver

  3. 然后要配置设备信息:

desired_caps={ #移动设备平台 'platformName':'Android', #平台OS版本号 'plathformVersion':'7', #设备的名称--值可以随便写 'deviceName':'test0106', #提供被测app的信息-包名,入口信息 'appPackage':'com.hpbr.bosszhipin', 'appActivity':'.module.launcher.WelcomeActivity', #确保自动化之后不重置app 'noReset':True, #设置session的超时时间,单位秒 'newCommandTimeout':6000

初始化对象:

#初始化driver对象-用于控制手机driver=webdriver.Remote('http://localhost:4723/wd/hub',desired_caps)driver.implicitly_wait(10)#稳定元素

在接下来就可以进行元素定位了.

最后感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:

这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你!

相关推荐
q***64971 分钟前
SpringSecurity踢出指定用户
android·前端·后端
q***76664 分钟前
SpringSecurity 实现token 认证
android·前端·后端
interception8 分钟前
爬虫js逆向,jsdom补环境,抖音,a_bogus
javascript·爬虫·python
Chejdj10 分钟前
ViewModel#onCleared的实现原理
android·源码阅读
林炳然14 分钟前
Python-Basic Day-5 函数-生成器&装饰器
python
代码对我眨眼睛18 分钟前
Ubuntu 系统 NVIDIA 显卡驱动自动化安装全流程
linux·ubuntu·自动化
Yue丶越28 分钟前
【Python】基础语法入门(四)
linux·开发语言·python
CheungChunChiu43 分钟前
Android 系统中的 NTP 服务器配置与选择逻辑详解
android·运维·服务器
q***49861 小时前
MySQL数据的增删改查(一)
android·javascript·mysql
aqi001 小时前
FFmpeg开发笔记(九十一)基于Kotlin的Android直播开源框架RootEncoder
android·ffmpeg·kotlin·音视频·直播·流媒体