Homebrew

Homebrew是一款 Mac OS 平台下的软件包管理工具,拥有安装、卸载、更新、查看、搜索等多种实用的功能,类似于 apt-get、yum。

官网

https://brew.sh/

安装

/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

验证是否安装成功

brew -v

更新

brew update && brew upgrade && brew clean

node.js、npm

安装node.js是因为基于命令行版本的appium测试工具需要node.js环境。npm是随同node.js一起安装的包管理工具。

安装

brew install node //该命令会将npm和node.js全部安装

验证是否安装成功

node -v //验证node.js
npm -v //验证npm

cnpm

npm 下载安装会有很多网络问题,安装淘宝的cnpm要比npm好用:https://npm.taobao.org/,安装命令如下:

sudo npm install -g cnpm --registry=https://registry.npm.taobao.org

libimobiledevice

libimobiledevice是一个使用原生协议与苹果iOS设备进行通信的库。相当于 Android 的 adb,用于获取iOS设备信息,是 appium 连接 iOS 设备必需要的依赖库,通过这个库 Mac OS 可轻松获得 iOS 设备信息。

安装

brew install --HEAD libimobiledevice

常用命令

idevicesyslog:查看系统日志

idevice_id -list:查看当前已连接设备的UUID

idevicescreenshot:截图

ideviceinfo:查看设备信息

idevicename:获取设备名称

libimobiledevice 安装错误的解决

1.安装libimobiledevice过程可能因为没有安装git而失败,需要安装git,执行以下命令进行安装:

brew install git

安装git成功之后,再次执行 libimobiledevice 安装命令即可。

2.如果继续报错,尝试设置 git 的 ssl 校验为 false,如下命令:

git config --global http.sslVerify false

然后再次执行 libimobiledevice 安装命令。

3.如果继续报错,如提示:Requested 'libusbmuxd > 1.1.0' but version of libusbmuxd is 1.0.10。则按顺序执行如下命令:

brew uninstall --ignore-dependencies libimobiledevice
brew uninstall --ignore-dependencies usbmuxd
brew install --HEAD usbmuxd
brew unlink usbmuxd
brew link usbmuxd

ios-deploy

ios-deploy 是一个使用命令行安装 ios app到连接设备的工具。原理是根据os x命令行调用系统底层函数,获取连接的设备、查询/安装/卸载app。iOS10+的系统以上使用appium,则需要安装 ios-deploy。

安装

npm install -g ios-deploy

或者

cnpm install -g ios-deploy

ios-deploy 相关命令

ios-deploy -c:查看相关链接设备,包括usb和WiFi两种方式连接的设备

ios-deploy -c --no-wifi:查看通过usb连接的设备

ios-deploy --id [udid] --bundle [xxx.app]:安装应用

ideviceinstaller

ideviceinstaller 是一个管理连接设备的工具,与 ios-deploy 类似,相当于 Android 的 adb。具有获取设备udid、安装app、卸载app、获取bundleid等功能。但仅在iOS9工作。

安装

brew install ideviceinstaller

carthage

carthage 是一款 iOS 项目依赖管理工具,与 cocoapods 有着相似的功能,可以帮助方便地管理三方依赖,类似于 java 的 maven。它会把三方依赖编译成 framework,以 framework 的形式将三方依赖加入到项目中进行使用和管理。

安装 carthage 是因为 WebDriverAgent 通过 carthage 管理项目依赖。

安装

brew install carthage

验证是否安装成功

carthage version

Appium

Appium 分为命令行版本和桌面版本。命令行版本的优点在于可以支持开启多设备的自动化测试,桌面版本的优点在于操作更加方便。

安装

安装 Appium 命令行版本

# 安装
brew install node     //get node.js
npm install -g appium     //get appium
npm install wd     //get appium client
appium &     // start appium
node your-appium-test.js# 命令行打开 Appium
appium -a 127.0.0.1 -p4723

安装 Appium 桌面版本(GUI版)

在官网选择对应版本下载即可:

http://appium.io

iOS自动化测试---使用的相关工具相关推荐

  1. iOS自动化测试的那些干货

    前言 如果有测试大佬发现内容不对,欢迎指正,我会及时修改. 大多数的iOS App(没有持续集成)迭代流程是这样的 也就是说,测试是发布之前的最后一道关卡.如果bug不能在测试中发现,那么bug 就会 ...

  2. Windows实现appium+iOS自动化测试

    在前面的文章介绍了Windows上安装配置tidevice,环境搭建好后就实现了在Windows运行iOS自动化的第一步,接下来本文重点介绍在Windows上如何运行iOS自动化测试. 如果没有安装好 ...

  3. 芈珺:iOS自动化测试工具总览

    2019独角兽企业重金招聘Python工程师标准>>> 芈珺:iOS自动化测试工具总览 从实用性的角度,剖析常见的iOS自动化测试工具,在学会使用自动化测试工具的同时,学会工具的设计 ...

  4. 【Mac + Appium + Python3.6学习(四)】之常用的IOS自动化测试API总结

    环境: Appium:1.9.1 Appium-desktop:1.7.1 Xcode:10.0 IOS:iPhone5S(10.3.3) Mac:10.13.6 ①获取手机屏幕size:长.宽 &l ...

  5. 跨平台iOS自动化测试工具——tidevice

    前言 一直以来,iOS自动化的实现&执行都依赖 Mac 系统,其主要原因是因为需要通过 Xcodebuild 编译&安装 WDA (WebDriverAgent) 到 iOS 设备中, ...

  6. iOS自动化测试环境搭建总结

    1.关于iOS真机和模拟器自动化环境搭建 参考博文: Appium+Python3+iOS真机环境搭建 iOS自动化测试:mac下iOS10 appium测试环境的搭建 IOS + Appium自动化 ...

  7. 如何使用IOS自动化测试工具UIAutomation

    这篇文章主要介绍了UIAutomation使用实例.应用技巧.基本知识点总结和需要注意事项,具有一定的参考价值 第一部分: 熟悉Instruments的UIAutomation. 第二部分: 控件的获 ...

  8. 最新出炉--IOS自动化测试环境搭建(Python Java)

    一.前言 IOS的App自动化测试与Android的一样,也可以用appium来进行.但是IOS自动化依赖苹果的osx系统.Xcode构建等,且封闭的系统需要苹果开发者账号才可以驱动真机.Appium ...

  9. EasyClick IOS 自动化测试 使用前置准备

    文章目录 EasyClick IOS 自动化测试 使用前置准备 前置条件 mac电脑一台或黑苹果一台 前置条件(安装代理Ipa) 前置条件(安装中控) 前置条件(安装开发插件) EasyClick I ...

  10. iOS自动化测试-环境搭建

    应用场景 想要进行iOS自动化测试,必须进行环境的搭建 需要的环境 macOS系统电脑 Xcode 待测试的iOS项目 appium Desktop python pycharm Download P ...

最新文章

  1. MySQL之主从切换
  2. u-boot移植初步尝试-tiny4412
  3. (十二)java版b2b2c社交电商spring cloud分布式微服务:使用Spring Cloud Sleuth和Zipkin进行分布式链路跟踪...
  4. 疯了!装个VS2010居然要75GB的硬盘空间!!
  5. html app的登陆、注册,登陆_注册.html
  6. 【Java】五种常见排序之-----------冒泡排序
  7. Ubuntu 16.04: 开启wifi设置 How To Enable WiFi In Ubuntu 16.04
  8. 【Interfacenavigation】通过《include/》重新使用布局(9)
  9. 编写一个成绩分类程序
  10. 飞机订票系统(c语言)
  11. R语言 melt()函数使用
  12. VS2015编译eXosip2-4.1.0 osip2-4.1.0
  13. windowManager添加的View 层级管理
  14. 九、多线程(高琪java300集+java从入门到精通笔记)
  15. Debian Etch 源配置
  16. Linux更新和设置系统时间
  17. Mac Safari 此连接非私人连接
  18. python怎么绘制饼图_Matplotlib绘制饼图
  19. FME对CAD扩展属性的读写
  20. 解决CSS中display: inline-block有缝隙问题

热门文章

  1. 详解缠中说禅走势中枢
  2. Java读取数据库中的数据
  3. 将RP文件导出为HTML文件
  4. 实用!Excel在线网页版表格Luckysheet源码
  5. 前端-html实现省份、地市、区县三级联动
  6. 中国主要水系、河流、湖泊数据矢量数据(shp格式)下载地址
  7. webstorm主题网址
  8. 深度学习CNN算法原理
  9. 试比较瀑布模型、快速原型模型、增量模型和螺旋模型的优缺点
  10. javawebJSP餐厅点餐系统源码JSP点餐系统JSP网上订餐系统JSP在线订餐系统JSP外卖系统