上一篇: mac上搭建appium+IOS自动化测试环境(二)
语言的选择
我这里选择的是Python语言(Python3),首先我们需要安装Python的appium包~
- 安装appium包(安装过的童鞋可以跳过)
终端输入
pip3 install appium-python-client
可以看到环境已经安装好了~
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
- 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代码就好啦。
这个服务也别忘了开启哦~~
手机上成功打开了应用~~
如果有不懂的欢迎大家留言咨询我愿效犬马之劳