美文网首页
Appium基础操作

Appium基础操作

作者: xiaohan_zhang | 来源:发表于2020-05-14 17:40 被阅读0次
  1. 打开模拟器
  2. 打开Appium Desktop
    host: 127.0.0.1
    port: 4723(默认)
  3. 启动adb server
    adb start-server
  4. 开始测试
  5. 关闭adb server
    adb kill-server
  • 导入driver对象
    from appium import webdriver
  • 声明手机驱动对象
    声明对象后会直接启动参数中的应用
    driver = webdriver.Remote('http://127.0.0.1:4723/wd/hub', desired_caps)
    desired_caps:负责启动服务端时的参数设置,appium server 与手机端建立会话关系时,根据这些参数服务端可以做出相应的处理

desired_caps常用参数:
platformName 平台的名称:iOS, Android, or FirefoxOS
platformVersion 设备系统版本号
deviceName 设备号 IOS:instruments -s devices,Android: adb devices
app 安装文件路径:/abs/path/to/my.apk or http://myapp.com/app
appActivity 启动的Activity
appPackage 启动的包
unicodeKeyboard unicode设置(允许中文输入)
resetKeyboard 键盘设置(允许中文输入)

# server 启动参数
desired_caps = {
  'platformName': 'Android',
  'platformVersion': '6.0.1',
  'deviceName': 'emulator-5554',
  'appPackage': 'cn.cntv',
  'appActivity': '.ui.activity.mine.PrivateShow',
  'unicodeKeyboard': True,  # 使用自带输入法,输入中文时填True
  'resetKeyboard': True,  # 执行完程序恢复原来输入法
  'noReset': True,       # 不要重置App
  # 'newCommandTimeout': 6000,
  # 'automationName' : 'UiAutomator2'
  # 'app': r'd:\apk\bili.apk',
}
  • 脚本内启动其他app
    driver.start_activity(appPackage,appActivity)
  • 关闭app
    关闭当前操作的app,不会关闭驱动对象
    driver.close_app()
  • 关闭驱动对象
    关闭驱动对象,同时关闭所有关联的app
    driver.quit()
  • 安装APK到手机
    driver.install_app(app_path)
    app_path:脚本机器中APK文件路径
  • 手机中卸载APP
    driver.remove_app(app_id)
    app_id:需要卸载的app包名
  • 判断APP是否已安装
    driver.is_app_installed(bundle_id)
    bundle_id: 可以传入app包名, 返回结果为True(已安装) / False(未安装)
  • 发送文件到手机
import base64
data = str(base64.b64encode(data.encode('utf-8')),'utf-8')
driver.push_file(path,data)
"""
  参数:
      path:手机设备上的路径(例如:/sdcard/a.txt)
      data:文件内数据,要求base64编码
      Python3.x中字符都为unicode编码,而b64encode函数的参数为byte类型,需要先转码;
       生成的数据为byte类型,需要将byte转换回去。
"""
  • 从手机中拉取文件
import base64
data = driver.pull_file(path) # 返回数据为base64编码
print(str(base64.b64decode(data),'utf-8')) # base64解码
"""
  参数:
      path: 手机设备上的路径
"""
  • 获取当前屏幕内元素结构
    返回当前页面的文档结构,判断特定的元素是否存在
    driver.page_source

相关文章

网友评论

      本文标题:Appium基础操作

      本文链接:https://www.haomeiwen.com/subject/qtwtohtx.html