基于wda的ui自动化测试,上层框架使用airtest和pocoui,跟appium、atx等框架都是大同小异,原理基本都一样
只是iOS的开发环境要学习一下,记录一些笔记:
自动化
1、脚本使用schame/URL跳转到指定页面,利用浏览器识别并跳转;类似用ios相机扫描二维码,就会弹出safari打开地址;
def start_by_schame(schame):
from airtest.core.ios import IOS
from poco.drivers.ios import iosPoco
if isinstance(G.DEVICE, Android):
shell("am start - d %s" % schame)
elif isinstance(G.DEVICE, IOS):
G.DEVICE.driver.session(bundle_id='com.apple.mobilesafari',
arguments=['-u', schame])
poco = iosPoco()
poco('打开').click()
2、ios命令行安装应用,ipa包
ideviceinstaller -i demo.ipa
如果提示没有ideviceinstaller这个命令,那么就需要先安装这个命令了。执行以下命令来安装ideviceinstaller工具
brew install ideviceinstaller
正常情况稍等一会就安装好了。
如果又提示brew命令找不到的话,那么就需要安装mac包管理工具(brew)如果想详细了解brew的话,请看这里
https://github.com/Homebrew/brew
报错“could not connect to lockdownd. exiting”
brew uninstall ideviceinstaller
brew uninstall libimobiledevice
brew install --HEAD libimobiledevice
brew link --overwrite libimobiledevice
brew install --HEAD ideviceinstaller
brew link --overwrite ideviceinstaller
sudo rm -rf /var/db/lockdown/*
sudo chmod -R 777 /var/db/lockdown/
3、iOS 模拟器安装ipa(有可能需要专门的模拟器包,否则可能闪退)
(1.将xx.ipa 改成xx.zip,解压得到xx.app
(2.打开模拟器
(3.打开终端,运行xcrun simctl install booted xx.app
mac使用
1、xcode查看设备信息
打开Xcode,Window---->Devices--->在右侧可查看到identifier(identifier即为我们获取到的iPhone 的UDID)
2、mac不能打开未知来源软件,点击[仍要打开]无效
尝试在终端输入 sudo spctl --master-disable