一、安装前环境准备

1、确保电脑已经有homebrew(包管理器)  下载链接[https://brew.sh/]
 
2、通过 brew 安装node.js
 brew install node
安装后检查`node -v`,需安装node@10或以上版本,若装了多个版本的node.js 需将旧版卸载掉或者使用nvm管理
 
3、使用淘宝的 npm 镜像
npm install -g cnpm --registry=https://registry.npm.taobao.org

4、CMake

brew install cmake

安装后检查`cmake --version`能正确输出版本

 
5、FFmpeg
 brew install ffmpeg
安装后`brew info ffmpeg` 标红色的为缺失的依赖,依次用brew安装
 
6.tesseract依赖
 brew install tesseract
安装后`brew info tesseract ` 标红色的为缺失的依赖,依次用brew安装
 
7、取消tesseract链接
brew unlink tesseract

8、Opencv4nodejs

 确保cmake跟FFmpeg及依赖都安装完毕才能进行下一步
CFLAGS="-w" CXXFLAGS="-w" cnpm install -g opencv4nodejs

9、链接tesseract

brew link tesseract

10、安装Carthage

brew install carthage
若已安装过的需更新版本至`0.34.0`或以上
 
 
============================================================================================================
 
 

二、安装Appium

 
1、安装 Appium(版本不低于1.16.0)
cnpm install -g appium

2.安装 app-doctor

cnpm install -g appium-doctor

3、检查环境

 appium-doctor或者appium-doctor --ios 
注:
* 1、要求『necessary』的部分必须全部安装正确,
* 2、对于『optional』部分,opencv4nodejs、ffmpeg等可能出现识别不到的情况,
* 2.1 对于npm安装的依赖包,使用『 npm list -g --depth 0 』,检查下是否安装完成,
* 2.2 对于brew安装的应用,使用『brew list 应用名』,检查是否扫描到有安装路径,重点注意有『bin』路径的
* 2.3 以上检查都正确,麻烦在质量群或者UI自动化群上告知下
 
 4、iOS重签
详细情况参考之前分享的IOS安装webdriveragent
* 进入`/usr/local/lib/node_modules/appium/node_modules/appium-webdriveragent`
* 打开 **WebDriverAgent.xcodeproj** ,将除名字带有_tvOS外的所有Schema进行重签
* Schema选择 **WebDriverAgentRunner**,点编译
* 若编译失败,进入`/usr/local/lib/node_modules/appium/node_modules/appium-webdriveragent`执行`carthage update`,在重新打开工程编译
 
>font color="RED">**iOS签名及证书不熟悉的麻烦先自学或咨询各自业务组开发**>/font>
 
* [iOS 最新证书制作流程、制作通用证书](https://www.jianshu.com/p/cebccba8bafc)
* [iOS打包签名,你真的懂吗?](https://mp.weixin.qq.com/s/zCaHftxdoM-R9L_0oO2ahw)
 
5、Instruments模板
wget -P ~/Library/Application\ Support/Instruments/Templates/ http://cdn101.lizhi.fm/web_res/common/20191203/LzPerformance.tracetemplate
若执行失败,执行`brew reinstall wget`后再重试
 
6、安装Libimobiledevice 先执行`idevice_id -l`若能正常获取连接到Mac的iOS设备则跳过这步,若报错则执行以下命令
brew install --HEAD libimobiledevice

7、安装ios-deploy

npm install -g ios-deploy

三、其他

 1、JDK & MAVEN
 
* JAVA1.8以上
 
2、XCode
 
3.IntelliJ IDEA
 * 安装 [Lombok](https://plugins.jetbrains.com/plugin/6317-lombok) 插件

搭建Mac+Java+appium+IOS真机自动化环境的更多相关文章

  1. appium ios真机自动化环境搭建&运行(送源码)

    appium ios真机自动化环境搭建&运行(送源码) 原创: f i n  测试开发社区  6天前 Appium测试环境的搭建相对比较烦琐,不少初学者在此走过不少弯路 首先是熟悉Mac的使用 ...

  2. appium ios真机自动化环境搭建&运行(送源码)

    appium ios真机自动化环境搭建&运行(送源码) 原创: f i n  测试开发社区  6天前 Appium测试环境的搭建相对比较烦琐,不少初学者在此走过不少弯路 首先是熟悉Mac的使用 ...

  3. appium ios 真机自动化环境搭建

    近期由于工作需要,本小菜在弄appium+ios+iphone真机的移动自动化,在网上找寻各种资料,发现针对IOS方面的资料少之又少,公司其它部门的弄过的同事也寥寥无几,即使有,也是安卓方面的.本次书 ...

  4. appium -ios 真机连接 环境搭建

    补充点一: 安装ios-deploynpm install -g ios-deploy 安装不了报错.! 后来找了找,发现sudo npm install -g ios-deploy --unsafe ...

  5. mac 下 配置appium +ios真机环境

    mac系统:10.11.6 xcode:7 appium:1.5.3 iphone: 6 p 1.搭建 appium 安卓的环境: 1.jdk 2.sdk 3.appium 4.配置环境变量 mac下 ...

  6. Appium+iOS真机环境搭建

    安装目录 1.macOS系统  10.12.6 2.xcode  9.0 3.appium Desktop  1.12.1 4.node.js node -v npm 5.cnpm npm insta ...

  7. MAC本上appium连接真机

    简单介绍一下appium连接ios真机测试环境的软件安装及配置过程: 目前我用的是desktop版本的appium, 所以MAC版本必须要升级到10.12以上,Xcode版本必须要在8.0以上,否则亲 ...

  8. MAC电脑下Appium + python3 + robotframework ios的真机测试环境搭建

    本人的环境搭建前的准备,MAC电脑一台(macOS Mojave 10.14.0及以上),Xcode 10.0及以上   ,自己注册的一个Apple ID 账户,必须你的电脑能连接互联网,最好不要用公 ...

  9. Appium 1.6.4 环境搭建流程(Java, Android+IOS, Windows+Mac)

    Appium1.6.4已经出来一段时间了,快速给大家串一下怎么搭建,贴了下载链接 1 基础环境: Windows + Mac: Java JDK 1.8+ (需配置环境变量),Appium1.6.4的 ...

随机推荐

  1. Learning ROS: Packaging your ROS project as a snap

    Snaps are containerised software packages that are simple to create and install. They auto-update an ...

  2. MySQL存储结构及SQL分类

    MySQL目录结构 bin -- mysql执行程序 docs -- 文档 share - 各国编码信息 data -- 存放mysql 数据文件 * 每个数据库 创建一个同名文件夹,.frm 存放t ...

  3. eclipse建立c语言工程以及成功下载到FPGA芯片过程遇到的各种问题以及解决方法详解

    推荐大家预先建立好一个工程目录文件夹,确实挺好用,参考正点原子的pdf教程,如下图所示, 我们eclipse在software文件夹建立一个workspace即可 选择用helloworld模板建立工 ...

  4. Python__requests模块的基本使用

    1 - 安装和导入 pip install requests import requests 2 - requsts的请求方法 requests.get('https://www.baidu.com/ ...

  5. Pytest 系列(28)- 参数化 parametrize + @allure.title() 动态生成标题

    如果你还想从头学起Pytest,可以看看这个系列的文章哦! https://www.cnblogs.com/poloyy/category/1690628.html 前言 参数化 @pytest.ma ...

  6. Mysql常用sql语句(5)- as 设置别名

    测试必备的Mysql常用sql语句系列 https://www.cnblogs.com/poloyy/category/1683347.html 需要注意,创建数据库和创建表的语句博文都在前面哦 整个 ...

  7. error: object file .git/objects/...

    cd .git find . -type f -empty -delete -print tail -n 2 .git/logs/refs/heads/master git show xxxx(版本号 ...

  8. tk.mybatis中常用方法的使用(最实用)

    一.前言 不知道环境和maven依赖怎么配置的,先看一下这个: SpringBoot整合tk.mybatis 二.方法的介绍和使用 插入方法 int insertSelective(T var1); ...

  9. .NET5修改配置不重启自动生效

    .NET Core,.NET5默认配置都是只加载一次,修改配置时都需要重启才能生效,如何能修改即时生效呢,下面来演示一遍. 一.设置配置文件实时生效 1.1配置 在Program.cs的CreateH ...

  10. Windows Phone 页面之间参数传递方法

    目前对WP7开发正在研究,对页面之间参数传递进行了一个小总结,有不正确的地方,欢迎大家指正.. WP7编程采用的技术是Silverlight,页面之间参数传递的方式主要有 通过NavigationCo ...