Skip to content
This repository has been archived by the owner on Mar 1, 2019. It is now read-only.

Mac installation

shengxiang edited this page Jul 15, 2017 · 8 revisions

iOS测试因为其管理的严格以及文档的困乏,使得其自动化实施起来困难重重。然而iOS的市场占有率又这么高,所以也只能硬着头皮去读Apple网站下一堆晦涩的文档,一边摸索,一边记录。

基础工具(Necessary)

下面的这些东西都是必须安装的,一个不要漏

Brew

Mac上,brew是必装的一个东西,安装方法参考 http://brew.sh/

Python

$ brew install python
$ which python
# expect output /usr/local/bin/python

先安装virtualenv,然后安装atx和opencv

$ pip install virtualenv
$ virtualenv venv
$ . venv/bin/activate
$ pip install --upgrade --pre atx
$ pip install opencv_contrib_python

其中 --pre 表示预览版本, --upgrade 是更新的意思

过去是通过brew安装的opencv brew install homebrew/science/opencv 但是这种安装方式速度太慢已经不推荐了

可选工具

如果测试安卓的话,需要安装下adb,安装方法 brew install android-platform-tools

但如果是测试iOS的话,稍微麻烦一点,你需要安装WebDriverAgent,这个是伟大的Facebook创造出来的一个工具

为了方便表达,一般都会用WDA来简称WebDriverAgent,安装方法参考 <https://github.com/facebook/WebDriverAgent.

PS: WDA安装最困难的问题,我觉的还是签名的问题,虽然有点麻烦,细心点还是可以搞定的。 Xcode编译没有问题之后,可以尝试命令行看是否正常

UDID=$(idevice_id -l)
xcodebuild -project WebDriverAgent.xcodeproj \
	-scheme WebDriverAgentRunner \
	-destination "id=$UDID" test

不过我还是强烈推荐在Xcode中运行(因为可以自动修复CodeSign错误的问题) 成功跑起来之后,会发现iOS上多了一个名叫WebDriverAgent的App, App实际上启动了一个服务器,监听的端口是8100 模拟器的ip是127.0.0.1, 所以其DEVICE_URL就是http://127.0.0.1:8100, 真机的需要查看手机Wifi的IP地址

iOS测试受限的地方

  • 输入法只能使用系统自带的输入法,某狗的输入法是不可以的

可选工具

这部分当然就是可装可不装的

$ brew install libimobiledevice # required
$ brew install homebrew/fuse/ifuse # optional

$ brew install node # skip if you already have node or nvm installed.
$ npm i -g ios-deploy

安装工具用于解析ipa包

$ pip install pyipa

可能的问题

部分电脑中可以会有低版本的numpy, 但是又卸载不掉, 就需要参考这篇文章 如何卸载mac上的numpy

参考资料