搭建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)#稳定元素

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

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

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

相关推荐
woodWu几秒前
Android 稳定性(二):治理思路篇
android
parade岁月5 分钟前
uniapp Android 原生插件开发-Module扩展为例-从开发到测试到部署到uniapp项目
android·uni-app
molong9316 分钟前
Android中Activity
android
Sinyu10128 分钟前
Flutter 动画实战:绘制波浪动效详解
android·前端·flutter
sunly_13 分钟前
Flutter:文章详情页,渲染富文本
android·javascript·flutter
那年星空17 分钟前
Flutter 3.x 版本升级实战:让老项目焕发新生
android·flutter·架构
两水先木示3 小时前
【Unity3D】导出Android项目以及Java混淆
android·java混淆
molong9313 小时前
Android中的Service
android
是阿建吖!3 小时前
【Linux】线程池
android·linux·c语言·c++
Yang-Never5 小时前
Canvas->Bitmap绘制
android·java·开发语言·kotlin·android studio·idea