使用Appium进行iOS的真机自动化测试

##安装类库

Homebrew

如果没有安装过Homebrew,先安装 [ homebrew ]

npm

如果没有安装npm,请移步 [ node.js和npm安装 ]
######安装依赖库
brew install libimobiledevice --HEAD sudo npm install -g ios-deploy --unsafe-perm=true

如果执行sudo npm install -g ios-deploy --unsafe-perm=true报错,执行sudo xcode-select --switch/Applications/Xcode.app/Contents/Developer/

######如果没有安装 libimobiledevice,会导致Appium无法连接到iOS的设备,所以必须要安装,如果要在iOS10+的系统上使用appium,则需要安装ios-deploy
######appium-doctor 安装

npm install appium-doctor -g
######安装后执行appium-doctor --ios指令,可以查看与iOS相关配置是否完整,下图是全部配置都成功,如果出现有一项不正确在执行一次就可以,或者直接跳过
appium-doctor --ios

######更新Appium中的WebDriverAgent

  • 到WebDriverAgent下载最新版本的WebDriverAgent
  • cd 进入下载后的WebDriverAgent文件
  • 执行 ./Scripts/bootstrap.sh
  • 直接用Xcode打开WebDriverAgent.xcodepro文件
  • 配置WebDriverAgentLib和WebDriverAgentRunner的证书
  • 连接并选择自己的iOS设备,然后按Cmd+U,或是点击Product->Test
  • 运行成功时,在Xcode控制台应该可以打印出一个Ip地址和端口号
  • 在网址上输入http://192.168.2.101:8100/status,如果网页显示了一些json格式的数据,说明运行成功。
  • **进入到Appium中的WebDriverAgent目录,目录路径如下/Applications/Appium.app/Contents/Resources/app/node_modules/appium/node_modules/appium-xcuitest-driver/ **
  • 将自己下载并编译后的WebDriverAgent替换Appium原有的WebDriverAgent

#####在Appium-Desktop下载传送门中下载最新版本的Appium-Desktop

  • 运行Appium-Desktop
  • 开启start server
  • 点击start new session并且在Desired Capabilities 中输入相关的参数后点击Start Session
  • 运行成功后,会弹出一个控制界面,在该界面中可以控制手机上正在运行的程序

######利用Appium-Python-Client进行iOS的自动化测试

  • 安装python

brew install python

  • 下载python-client
    git clone https://github.com/appium/python-client.git
    cd python-client
    python setup.py install

  • 在git上下载测试文件appiumSimpleDemo

######开始自动化测试

  • 打开下载后的appiumSimpleDemo文件,打开appiumSimpleDemo.xcodepro程序,配置下TARGET的签名

  • 在appiumSimpleDemo的根目录执行编译指令,编译出一个app文件xcodebuild -sdk iphoneos -target appiumSimpleDemo -configuration Release,编译成功后app文件的地址会打印在命令行中

  • 配置python文件

打开appiumSimpleDemo中的appiumSimpleDemo.py文件,将,修改setup中的几个参数,将app的路径,设备的相关信息修改成当前连接设备的信息。

######如果执行appiumSimpleDemo.py报错File"/usr/local/Cellar/python@2/2.7.15/Frameworks/Python.framework/Versions请升级python版本,如果你是iOS开发人员,请谨慎,升级python有可能是Xcode无法打包参考文稿


如果能关注一下万分感谢“悦人杂记”微信公众号二维码:

#参考链接
######https://www.jianshu.com/p/ae8846736dba
######https://github.com/zhshijie/appiumSimpleDemo
######https://github.com/appium/appium-desktop/releases/tag/v1.2.0-beta.1
######https://www.liaoxuefeng.com/wiki/001434446689867b27157e896e74d51a89c25cc8b43bdb3000/00143450141843488beddae2a1044cab5acb5125baf0882000
######https://blog.csdn.net/iosswift/article/details/48765993

使用Appium进行iOS的真机自动化测试相关推荐

  1. Mac M1 appium Android iOS 启动真机调试

    前言:继 Mac M1 appium环境搭建成功之后,又要开始真机调试的环节啦,还没搭好环境的小伙伴戳   Mac M1 平台搭建 appium 环境_抓到一只测试小白的博客-CSDN博客,接下来要开 ...

  2. android 手机自动化测试,Appium进行Android手机真机自动化测试

    前置条件: 安装JDK jdk 9使用appium还有点问题,最好使用jdk 8.我使用的是jdk 8u161. 下载前需要先同意协议 下载后双击安装,安装完成后需要手工设置环境变量: 右键单击&qu ...

  3. ios xcode真机调试获取屏幕截屏

    ios xcode真机调试获取屏幕截屏 非常多时候我们须要在调试的过程中把手机屏幕截图发给其它人看,在android开发中我们能够非常方便的截图保存.而xcode开发ios的时候发现这个需求却如此困难 ...

  4. iOS小技能:iOS无线真机调试

    文章目录 引言 I iOS无线真机调试 II iOS16适配 III Xcode13的使用技巧 see also 引言 I iOS无线真机调试 iOS无线真机调试的使用场景:忘记带数据 如果有数据线, ...

  5. 真香!iOS云真机全新上线!

    作者:WeTest小编 商业转载请联系腾讯WeTest获得授权,非商业转载请注明出处. 原文链接:https://wetest.qq.com/lab/view/434.html WeTest 导读 众 ...

  6. iOS+Appium最简单的环境搭建,快速实现真机自动化测试

    前言 整理不易耗时两星期配置成功,查看一两年前的教程文章走了太多弯路到处都是坑和报错 需配置环境:Homebrew.node.cnpm.Carthage.ios-deploy.libimobilede ...

  7. iOS远程真机之非越狱iOS设备的远程控制实现原理

    通过iOS设备控制PC可能较为常见,App Store也有不少类似的应用,但是通过PC控制iOS相信大家很难在网上找到解决方案,能找到的也大部分是需要依赖越狱来实现. 安卓提供了强大的adb工具,能轻 ...

  8. 【Appium】如何配置真机连接及定位元素

    目录 一.真机配置 1.使用数据线连接真机与电脑. 2.开启开发者模式 3.开启USB调试 二.编写脚本 1.修改deviceName 2.修改platformVersion 3.appPackage ...

  9. iOS 12 真机调试 Xcode 9 提示 Could not locate device support files.

    升级 iOS 12 之后,使用 Xcode 9 真机调试会提示错误: Could not locate device support files. This iPhone 6 Plus is runn ...

最新文章

  1. 数据结构与算法常用名词术语整理
  2. python学习笔记(开课介绍1)
  3. Spock是什么?它和JUnit,JMock有什么区别?
  4. TX2 -cartographer安装
  5. 5G NR — 关键技术
  6. HTML中的div标签
  7. php 写入sql server,php将图片直接写入SQLServer2008
  8. Matlab中MatPower模块的安装流程
  9. python文本文件合并_使用python将2个文本文件合并为一个文件 - python
  10. Font Awesome 找图标的正确姿势
  11. 超越授权使用计算机,提供侵入、非法控制计算机信息系统程序、工具罪
  12. 基于51单片机的无线病床呼叫系统装置 proteus仿真原理图程序设计
  13. 3208点阵时钟c语言程序,点阵万年历(带时间、年月日星期调整及闹钟功能)C程序...
  14. (Modern Family S01E01) Part 9 PhilClair 射Luke、Haley和Dylan躺床上看电影
  15. 首页数据展示前端页面
  16. Scratch滚动的天空(1)
  17. 定位导航——旋转矩阵,IMU,左右乘
  18. flac转换成mp3,4种方法教会你
  19. cakephp笔记——find()函数
  20. Beats:使用 Elastic Stack 记录 Python 应用日志

热门文章

  1. SSH使用及协议分析
  2. Java调用和风天气台API查看天气
  3. 完整获取图片根据图片链接地址
  4. 极路由1s HC5661 编程器救砖教程
  5. 创新微带你了解LoRa与LoRaWAN的区别有哪些
  6. 电脑报网站使用盗版软件?
  7. 电脑出现无法连接到远程服务器失败,解析错误:因为无法连接到远程服务器造成无法登录敬业签PC便签...
  8. 计算24点游戏精化算法剖析
  9. 坚果pro2s android 8,一块钱之差,坚果Pro 2S和小米8SE对比,你点赞哪个?
  10. php 海关对接 进口商品_GitHub - kipp01/haiguan: 海关对接 订单申报 php xml加签