一、Appium介绍
Appium是一个移动端的自动化框架,可用于测试原生应用、移动网页应用和混合型应用,且是跨平台的。可用于IOS和Android以及firefox的操作系统。
二、环境搭建
主要几个点如下:
1. appium安装
直接解压即可,打开Appium.exe
启动成功展示如下:
2. Appium库安装
# 安装
pip install Appium-Python-Client
# 检验是否成功
pip list
三、Appium使用
1. 打开模拟器或真机的应用
①打开手机应用
②打开Appium
③创建一个python项目,并创建一个文件
④将下面代码复制到文件中
⑤获取当前应用包名和启动activity并修改文件
2. 脚本内启动其他app
driver.start_activity(appPackage,appActivity)
3. 关闭app
driver.close_app() # 关闭当前操作的app,不会关闭驱动对象
4. 关闭驱动对象
driver.quit() # 关闭驱动对象,同时关闭所有关联的app
三、App基础操作API
完成app自动化需要一些基础条件的支持,本节将讲解APP初始化API。
3.1前置代码
# server 启动参数desired_caps={}desired_caps['platformName']='Android'desired_caps['platformVersion']='5.1'desired_caps['deviceName']='192.168.56.101:5555'desired_caps['appPackage']='com.android.settings'desired_caps['appActivity']='.Settings'desired_caps['unicodeKeyboard']=Truedesired_caps['resetKeyboard']=True# 声明driver对象driver=webdriver.Remote('http://127.0.0.1:4723/wd/hub',desired_caps)
3.2 安装APK到手机
driver.install_app(app_path)
参数:app_id:需要卸载的app包名
3.4 判断APP是否已安装
driver.is_app_installed(bundle_id)
参数:bundle_id: 可以传入app包名,返回结果为True(已安装) / False(未安装)
3.5 发送文件到手机
import base64
data = str(base64.b64encode(data.encode('utf-8')),'utf-8')
driver.push_file(path,data)
参数:
3.6 从手机中拉取文件
import base64
data = driver.pull_file(path) # 返回数据为base64编码print(str(base64.b64decode(data),'utf-8')) # base64解码
参数: path: 手机设备上的路径
3.7获取当前屏幕内元素结构
driver.page_source