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

启动appium服务

终端启动直接输入appium

退出: ctrl + c 

adb工具也要启动 定位包名和启动名

adb shell dumpsys activity | find "mFocusedActivity"

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)

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值