iOS自动化测试---使用的相关工具
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自动化测试---使用的相关工具相关推荐
- iOS自动化测试的那些干货
前言 如果有测试大佬发现内容不对,欢迎指正,我会及时修改. 大多数的iOS App(没有持续集成)迭代流程是这样的 也就是说,测试是发布之前的最后一道关卡.如果bug不能在测试中发现,那么bug 就会 ...
- Windows实现appium+iOS自动化测试
在前面的文章介绍了Windows上安装配置tidevice,环境搭建好后就实现了在Windows运行iOS自动化的第一步,接下来本文重点介绍在Windows上如何运行iOS自动化测试. 如果没有安装好 ...
- 芈珺:iOS自动化测试工具总览
2019独角兽企业重金招聘Python工程师标准>>> 芈珺:iOS自动化测试工具总览 从实用性的角度,剖析常见的iOS自动化测试工具,在学会使用自动化测试工具的同时,学会工具的设计 ...
- 【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 ...
- 跨平台iOS自动化测试工具——tidevice
前言 一直以来,iOS自动化的实现&执行都依赖 Mac 系统,其主要原因是因为需要通过 Xcodebuild 编译&安装 WDA (WebDriverAgent) 到 iOS 设备中, ...
- iOS自动化测试环境搭建总结
1.关于iOS真机和模拟器自动化环境搭建 参考博文: Appium+Python3+iOS真机环境搭建 iOS自动化测试:mac下iOS10 appium测试环境的搭建 IOS + Appium自动化 ...
- 如何使用IOS自动化测试工具UIAutomation
这篇文章主要介绍了UIAutomation使用实例.应用技巧.基本知识点总结和需要注意事项,具有一定的参考价值 第一部分: 熟悉Instruments的UIAutomation. 第二部分: 控件的获 ...
- 最新出炉--IOS自动化测试环境搭建(Python Java)
一.前言 IOS的App自动化测试与Android的一样,也可以用appium来进行.但是IOS自动化依赖苹果的osx系统.Xcode构建等,且封闭的系统需要苹果开发者账号才可以驱动真机.Appium ...
- EasyClick IOS 自动化测试 使用前置准备
文章目录 EasyClick IOS 自动化测试 使用前置准备 前置条件 mac电脑一台或黑苹果一台 前置条件(安装代理Ipa) 前置条件(安装中控) 前置条件(安装开发插件) EasyClick I ...
- iOS自动化测试-环境搭建
应用场景 想要进行iOS自动化测试,必须进行环境的搭建 需要的环境 macOS系统电脑 Xcode 待测试的iOS项目 appium Desktop python pycharm Download P ...
最新文章
- MySQL之主从切换
- u-boot移植初步尝试-tiny4412
- (十二)java版b2b2c社交电商spring cloud分布式微服务:使用Spring Cloud Sleuth和Zipkin进行分布式链路跟踪...
- 疯了!装个VS2010居然要75GB的硬盘空间!!
- html app的登陆、注册,登陆_注册.html
- 【Java】五种常见排序之-----------冒泡排序
- Ubuntu 16.04: 开启wifi设置 How To Enable WiFi In Ubuntu 16.04
- 【Interfacenavigation】通过《include/》重新使用布局(9)
- 编写一个成绩分类程序
- 飞机订票系统(c语言)
- R语言 melt()函数使用
- VS2015编译eXosip2-4.1.0 osip2-4.1.0
- windowManager添加的View 层级管理
- 九、多线程(高琪java300集+java从入门到精通笔记)
- Debian Etch 源配置
- Linux更新和设置系统时间
- Mac Safari 此连接非私人连接
- python怎么绘制饼图_Matplotlib绘制饼图
- FME对CAD扩展属性的读写
- 解决CSS中display: inline-block有缝隙问题