1.macOS相关库安装

libimobiledevice

> brew install libimobiledevice

使用本机与苹果iOS设备的服务进行通信的库。

ideviceinstaller

brew install ideviceinstaller

获取设备udid、安装app、卸载app、获取bundleid

carthage

> brew install carthage

第三方库管理工具。

ios-deploy

> brew install ios-deploy

ios-deploy 不依赖于XCODE,进行安装和调试IOS应用程序。

node & npm

> brew install node

> brew install npm

appium-doctor

npm install -g appium-doctor

验证appium环境

> appium-doctor

info AppiumDoctor Appium Doctor v.1.11.0

info AppiumDoctor ### Diagnostic for necessary dependencies starting ###

info AppiumDoctor ✔ The Node.js binary was found at: /usr/local/bin/node

info AppiumDoctor ✔ Node version is 10.15.1

info AppiumDoctor ✔ Xcode is installed at: /Applications/Xcode-beta.app/Contents/Developer

info AppiumDoctor ✔ Xcode Command Line Tools are installed in: /Applications/Xcode-beta.app/Contents/Developer

info AppiumDoctor ✔ DevToolsSecurity is enabled.

info AppiumDoctor ✔ The Authorization DB is set up properly.

info AppiumDoctor ✔ Carthage was found at: /usr/local/bin/carthage. Installed version is: 0.33.0

info AppiumDoctor ✔ HOME is set to: /Users/tech

...

2.XCode

Xcode 是iOS开发环境,可以到app store 下载安装。

Xcode 的安装需要macOS升级到最新的版本,如果你的系统不是最新版本需要升级。

WebDriverAgent

在模拟器中运行的用于iOS的WebDriver服务器。

该项目由facebook开发,appium拉了个分支来维护,更新上超过了facebook,所以我们用appium的分支。

通过git clone 将项目克隆下来。

进入项目目录执行shell脚本:

../WebDriverAgent> ./Scripts/bootstrap.sh

通过xcode导入WebDriverAgent 项目

找到build Settings ---> packaging---> Product Bundle Identifier 选项。将值修改为唯一识别的字符串。

Build Phases ---> Copy frameworks ---> 检查框架。

RoutingHTTPServer.framework

YYCache.framework

如果没有这两个框架,点击下方加号+添加。

3.iPhone

准备一台iPhone手机,通过数据线与PC进行连接。

1.选择连接的手机

2.菜单栏:product --> Scheme --> WebDriverAgentRunner

3.菜单栏:Product---> Test

4.在iPhone手机上打开设置:通用--> 描述文件与设备管理--> 开发者App ,设置Apple Development xxxxx 在此iPhone上受信任。

5.检查日志是否有错误。

4.iproxy

安装 usbmuxd,他自带了iproxy小工具,iproxy将设备上的端口映射到电脑上的某个端口。

> brew install usbmuxd

> iproxy 8100 8100

5.开始测试

终于可以开始测试了,你有几种选择。

我选 openatx/facebook-wda,因为它更加简单。

安装:

pip3 install -U facebook-wda

测试脚本:

import wda

c = wda.Client('http://localhost:8100')

print(c.status())

结果:

{'message': 'WebDriverAgent is ready to accept commands', 'state': 'success', 'os': {'name': 'iOS', 'version': '13.4', 'sdkVersion': '13.4'}, 'ios': {'simulatorVersion': '13.4', 'ip': '192.168.1.8'}, 'ready': True, 'build': {'time': 'Mar 28 2020 23:01:36', 'productBundleIdentifier': 'com.facebook.WebDriverAgentRunner'}, 'sessionId': 'F951380E-7219-4EA9-84FC-CC8BE78A12F8'}

好了,可以开始你的iOS自动化测试了。

苹果手机python环境_iOS自动化环境搭建(超详细)相关推荐

  1. windows环境下安装RabbitMQ(超详细)

    windows环境下安装RabbitMQ(超详细) 记录RabbitMQ安装过程,欢迎大家和我交流.(安装过程中遇到的问题也有总结哈,请查看) RabbitMq简介 安装准备工具 安装步骤(图文) 安 ...

  2. vite+vue3+ts+element-plus项目搭建--超详细

    vite+vue3+ts+element-plus项目搭建–超详细 vite 作用 快速的冷启动:不需要等待打包操作: 即时的热模块更新:替换性能和模块数量的解耦让更新飞起: 真正的按需编译:不再等待 ...

  3. Python数据可视化之Plotnine库超详细教程系列

    Python数据可视化之Plotnine库超详细教程系列(一):概述 一.Plotnine库简介 ggplot2包奠定了R语言数据可视化在数据科学中的地位,数据可视化一直是Python的短板,即使有M ...

  4. python爬虫之bs4模块(超详细)

    python爬虫之bs4模块(超详细) 一.bs4简介 二.使用方法 三.BeautifulSoup四大对象种类 (1)tag (2)NavigableString (3)BeautifulSoup ...

  5. Python+Appium APP自动化环境搭建

    Python+Appium之APP自动化环境搭建 1.安装node.js (1)一直点击下一步即可 (2)配置环境变量 (3)输入npm --version 安装成功 2.安装appium-docto ...

  6. JavaJDK下载安装与环境配置(Windows 10 超详细的图文版教程 )

    前言:对于很多初学者来说,我想可能很多人都会遇到JDK环境变量的配置问题.明明就是按照度娘上的教程去一步步配置的,但还是会有很多的人出现配置不成功的问题.所以今天在这里分享一下windows 10 系 ...

  7. fabric2.3.2 test-network测试网络搭建 超详细步骤

    搭建好fabric网络后的第一步一定是练习一下测试网络.如果需要ubuntu下安装fabric环境的可以看下面两篇文章: Ubuntu16.04+fabric1.4.3 (15条消息) fabric1 ...

  8. python下载-Python下载和安装图文教程[超详细]

    如今python语言非常火,很多小伙伴都开学习python,但是很多小伙伴在安装python的时候遇到问题,下面我们就想详细介绍介绍python下载和安装的方法. 1. 打开python下载链接htt ...

  9. python电脑上怎么下载-Python下载和安装图文教程[超详细]

    如今python语言非常火,很多小伙伴都开学习python,但是很多小伙伴在安装python的时候遇到问题,下面我们就想详细介绍介绍python下载和安装的方法. 1. 打开python下载链接htt ...

最新文章

  1. 计算机视觉开源库OpenCV形态学morphologyEx函数之开运算和闭运算
  2. 好好学python·基本数据类型
  3. 【MM模块】Invoice for POs with Acc Assignment 科目指派
  4. go与JAVA差异_20190312_浅谈gojava差异(二)
  5. Stark 组件:快速开发神器 —— 锦上添花
  6. Linux多线程详解
  7. poi各种jar包作用和导入
  8. RestTemplate 发送 get 请求使用误区 多值为null
  9. C语言国二上机题库,【高分飘过】2013年国二C语言上机题库(必备完美版).doc
  10. C语言用冒泡法对数组元素降序,冒泡法排序c语言
  11. 关于安装office软件时和visio软件冲突
  12. post请求测试软件,简单的Http请求测试工具(支持get,post)
  13. 基于氚云平台的应用开发学习(二)
  14. SLAM建图精度评估 by EVO
  15. 修真院教学模式四大体系之职业素养
  16. 卷积在深度学习中的作用(转自http://timdettmers.com/2015/03/26/convolution-deep-learning/)...
  17. mybatis plus 格式话_MyBatisPlus学习整理(二)
  18. 毛巾架用久了生锈怎么办?
  19. 2021-2025年中国InGaAs光电二极管及阵列行业市场供需与战略研究报告
  20. 自学Matlab必备的60个小程序代码

热门文章

  1. 微信小程序开发过的项目,玉器微商平台,拼团组团系统,在线商城,个人开发保证能用后台服务器等
  2. Android Mars XLog 自定义存储格式
  3. 世界上最高效的笔记方法(改变你那老版的记笔记方法吧)
  4. 多台CentOS服务器时间同步(NTP时间同步)
  5. 冒名顶替上大学罗彩霞_冒名顶替综合症对男人的打击与对女人的打击一样……以及成千上万的其他发现……...
  6. 扬帆际海:2022虾皮跨境电商模式简易程度
  7. html2canvas边框不现实,html2canvas边框图像问题
  8. AfxMessageBox与MessageBox函数
  9. 大家应该知道的社保常识 看看吧会有用的
  10. 探索VGG网络与LeNet网络对精度的影响