移动端测试——App基础操作API

1、安装apk到手机上

# -*-coding: utf-8 -*-
from appium import webdriver
import base64

desired_caps = {}
desired_caps['platformName'] = 'Android'
desired_caps['platformVersion'] = '5.1'
desired_caps['deviceName'] = '192.168.56.101:5555'
# app信息
desired_caps['appPackage'] = 'com.android.settings'
desired_caps['appActivity'] = '.Settings'

# 声明desire对象
driver = webdriver.Remote('http://localhost:4723/wd/hub', desired_caps)

# 安装apk到手机  文件路径
driver.install_app(r'C:\Users\l\Desktop\爬虫\移动端测试\1973617.apk')


# 退出驱动对象
driver.quit()

2、卸载apk

# -*-coding: utf-8 -*-
from appium import webdriver
import base64

desired_caps = {}
desired_caps['platformName'] = 'Android'
desired_caps['platformVersion'] = '5.1'
desired_caps['deviceName'] = '192.168.56.101:5555'
# app信息
desired_caps['appPackage'] = 'com.android.settings'
desired_caps['appActivity'] = '.Settings'

# 声明desire对象
driver = webdriver.Remote('http://localhost:4723/wd/hub', desired_caps)

# 卸载APP操作        APK的包名
driver.remove_app("com.youba.calculate")

# 退出驱动对象
driver.quit()

3、判断是否安装了APK

# 可以传入app包名,返回结果为True(已安装) / False(未安装)
is_data=driver.is_app_installed("com.android.dialer")
print(is_data)

4、发送文件到手机

import base64
# 电脑文件路径
with open('./text.txt', 'r') as f:
# 编码 ---> 转码
     data = str(base64.b64encode(f.read().encode('utf-8')), 'utf-8')
# 发送到APP上的路径
     driver.push_file('/sdcard/text.txt', data)
  参数:
      data:文件内数据,要求base64编码
      Python3.x中字符都为unicode编码,而b64encode函数的参数为byte类型,需要先转码;
       生成的数据为byte类型,需要将byte转换回去。

 5、拉取文件:

 import base64
 data = driver.pull_file(path) # 返回数据为base64编码
 print(str(base64.b64decode(data),'utf-8')) # base64解码
  参数:
      path: 手机设备上的路径

6、获取当前屏幕内元素结构 

# 返回当前页面的文档结构,判断特定的元素是否存在
page_data = driver.page_source

if '妞' in page_data:
    print('ok')
else:
    print('NO')
print(page_data)

猜你喜欢

转载自blog.csdn.net/qq_42350970/article/details/85228730