使用facebook-wda进行iOS APP自动化测试

facebook-wda 是一个基于Python的测试库,通过HTTP协议与WebDriverAgent通信,本文介绍如何使用 facebook-wda 进行iOS APP自动化测试。

环境准备

使用 facebook-wda 之前需要满足如下条件:

  1. 手机安装 WebDriverAgent应用

    • 可以使用xcodebuild启动WDA(需要MAC电脑)
    • 也可以使用 tidevice 启动,它可以在Linux 、Windows和MAC上使用
  2. 电脑安装facebook-wda:

pip3 install -U facebook-wda

在windows上搭建iOS自动化测试环境可参考: Windows上实现iOS APP自动化测试:tidevice + WebDriverAgent + facebook-wda / appium

本文使用tidevice启动WDA:

$ tidevice list
List of apple devices attached
00008101-000255021E08001E iPhone12
$ 
$ tidevice -u [设备 udid] wdaproxy -B [wda 的 bundle Id] --port 8100

可以使用weditor查看UI元素,注意使用它之前要启动WDA。

pip3 install -U weditor # 安装

命令窗口输入weditor,会自动打开一个浏览器,选择iOS。

使用facebook-wda进行iOS APP自动化测试_第1张图片

环境准备好后就可以使用 facebook-wda 进行iOS APP自动化测试了。

初始化

全局配置

import wda

wda.DEBUG = False # default False
wda.HTTP_TIMEOUT = 180.0 # default 180 seconds
wda.DEVICE_WAIT_TIMEOUT = 180.0

DEBUG设置为 True 时会显示HTTP请求和响应信息

>>> import wda
>>> wda.DEBUG = True
>>> wda.HTTP_TIMEOUT = 180.0
>>> wda.DEVICE_WAIT_TIMEOUT = 180.0
>>> c = wda.Client('http://localhost:8100')
>>> c.app_current()
Shell$ curl -X GET -d '' 'http://localhost:8100/wda/activeAppInfo'
Return (206ms): {
  "value" : {
    "processArguments" : {
      "env" : {

      },
      "args" : [

      ]
    },
    "name" : "",
    "pid" : 228,
    "bundleId" : "com.apple.Preferences"
  },
  "sessionId" : null
}
{'processArguments': {'env': {}, 'args': []}, 'name': '', 'pid': 228, 'bundleId': 'com.apple.Preferences'}
>>>
>>> wda.DEBUG = False
>>> c.app_current()
{'processArguments': {'env': {}, '

你可能感兴趣的:(经验分享,1024程序员节,软件测试,facebook,自动化,ios)