基于Python的ios自动化测试demo

上一篇: mac上搭建appium+IOS自动化测试环境(二)

语言的选择

我这里选择的是Python语言(Python3),首先我们需要安装Python的appium包~

  • 安装appium包(安装过的童鞋可以跳过)

终端输入

pip3 install appium-python-client
基于Python的ios自动化测试demo_第1张图片
image.png

可以看到环境已经安装好了~

desired_caps配置

这个其实在安卓上也要有相应的配置,因为你需要告诉appium,你到底是要启动什么机器,机器的型号,机器的udid等信息。

先看一段我的代码,因为只是demo,所以写的比较仓促~~~

from appium import webdriver
desired_caps = {}
desired_caps['deviceName'] = "iPhone 5"
desired_caps['platformName'] = 'ios'
desired_caps['platformVersion'] = '10.0.2'
desired_caps['bundleId'] = 'net.yitu8.driver2'     # 这里是你的包名
desired_caps['udid'] = '你机器的udid'
desired_caps['AutomationName'] = 'XCUITest'
desired_caps['xcodeOrgId'] = "填写你公司的开发者帐号"
desired_caps['xcodeSigningId'] = "iPhone Developer"
desired_caps['no-reset'] = True
# desired_caps['app'] = "/Users/woody/Downloads/DriverSide.ipa"
driver = webdriver.Remote(command_executor="http://127.0.0.1:4723/wd/hub", desired_capabilities=desired_caps)
driver.find_element_by_name("行程").click()

配置信息的获取

  • deviceName: 这个大家看下自己的iPhone就知道了,比如我的设备比较low,还是iPhone 5,改成自己对应的就好了。
  • platformName: 这个自然不用讲,就是手机系统名,填ios
  • platformVersion: 这个是系统版本,比如我的是ios10.0.2,填写10.0.2
  • bundleId: 这个填写上一篇内容里安装好的,使用命令: ideviceinstaller -l
    如果提示ideviceinstaller没找到的话,通过brew安装: brew install ideviceinstaller
基于Python的ios自动化测试demo_第2张图片
image.png
  • AutomationName: 指定你的AutomationName,现在可以看到我们这边都是用的这个xcuitest,所以这里和我保持一致好啦。
  • xcodeOrgId: 这里填你的开发者帐号
    -xcodeSigningId: 这里按照我给出的填

其他配置

  • no-reset: 因为app的测试是一套完整的流程,从安装app到测试完成到卸载app,但是我个人觉得iPhone上不太适合这一流程,因为iPhone不比安卓,都是自己自己安装apk,而且也主要是我这儿ipa安装有些问题,一直没有成功,只能先这样了。之后再研究,我在appium的github看到过无数此类issue,有说appium版本问题的,也有其他说法的。总之这里就填True啦

  • newCommandTimeout 这个配置可以加入超时时长,方便调试。默认值是60


启动app

  • ios手机插上USB数据线
    这个不必多说了,记得信任此电脑

  • 启动appium服务
    如果环境没有问题的话,在终端输入:

appium --no-reset -p 4723 --session-override

no-reset参数刚才讲过了,是防止appium删除你的app
-p是设置appium服务的端口号, 我这设置的是4723
session-override 带上这个参数的话,每次脚本视图启动一个会话的时候都会覆盖上一个会话

  • 运行测试脚本
    执行你的Python代码就好啦。
基于Python的ios自动化测试demo_第3张图片
image.png

这个服务也别忘了开启哦~~

基于Python的ios自动化测试demo_第4张图片
image.png

手机上成功打开了应用~~

如果有不懂的欢迎大家留言咨询我愿效犬马之劳

下篇: 启用macaca的app-inspector定位ios设备元素

你可能感兴趣的:(基于Python的ios自动化测试demo)