简单介绍一下appium连接ios真机测试环境的软件安装及配置过程:

目前我用的是desktop版本的appium, 所以MAC版本必须要升级到10.12以上,Xcode版本必须要在8.0以上,否则亲们没法测试10.3的版本哦~~~(appium官方帮助文档也有详细的说明,请大家认真阅读),如果大家已经升级MAC OS, 并且已下载最新的Xcode版本(必须先升级系统版本,再升级Xcode版本才可以,唉,要习惯MAC系统,而且会很大慢,大家耐心等待呀),请继续往下吧~~~

1. 装一下Homebrew,去官网下载下,用brew命令在MAC上装软件还是很方便的。建议大家用这个来装其他软件。

2.安装node.js : brew install node.

3.下载Appium desktop版本,最好搭个VPN的代理下的快些,要不然真是~~~~,desktop版本下载完后直接就可以用了。不需要用命令下,用命令下会更慢。

4.可选择下载一下appium-doctor,用于检查一下当前环境是否满足appium的基本运行环境,npm install -g appium-doctor, 然后用 appium-doctor --ios 或者 appium-doctor --android 来检测当前环境是否已配好,这样可以清晰的知道缺什么东西。

5.安装工具libimobiledevice: brew install libimobiledevice. 这个工具是连接Iphone真机必备的,如果未安装,appium的log里也会提示安装,有时候看log也是很必要的。这个工具是用来做什么的呢?This functionality currently depends on logging based on idevicesyslog, and port forwarding based on iProxy, both of which are part of libimobiledevice. 也就是说,如果连接真机设备,设备的系统日志和指向端口都是要基于这个工具的。

6.安装ios-deploy: npm install -g ios-deploy(或者用brew,我这里装了npm,一样的). 这是ios app的安装工具,如果连接真机,那我们想要测试的app或驱动app的工具都需要用这个工具使用命令行安装。如果没有安装,appium的log里也会有相应的提示。

7.安装一个包的依赖管理工具Carthage: brew install Carthage. 这个工具是依赖库的管理工具.如果未安装,log应该也会有相应的提示。

8.再装个ios的授权模拟器吧,这个不是必须的,可以使用模拟器自己先试下,再连真机,如果模拟器可以通过,那应该是证书的问题。所以自己调试的时候可以先试一下。npm install -g authorize-ios(或者用brew,我这里装了npm,一样的)(这里有个小小的插曲,如果是MAC本上登录的用户不管理员权限的话,可能好多软件装的时候都会提示权限问题,所以sudo一下,会授权当前用户,终端上都会有错误提示,可以根据提示的命令来装东西)

9.手机连上MAC本,然后下载个itunes查看一下手机的udid.

10,启动Appium,创建一个session,然后在desired capabilities 设置里如下填写:

‘’automationName": "Appium", -- 默认是appium
"platformName": "iOS", --设置应用平台
“platformVersion": "10.3", -- 设置当前平台的系统版本,不需要设置到三位,设置两位就可以了
”deviceName": "iPhone7", --设置当前连接MAC本的手机名称,在设置里可以查到手机名
“bundleId": "com.testi.test.uuaatt",--设置当前应用的activename,这个启动名称可以跟相应的开发人员要,也可以自己通过其他工具看一下(工具的话请大家问度娘吧~~)
"udid":" ",--设置当前手机的udid,通过iTunes拷贝过来,建议还是拷贝过来,太长太难输了
"xcodeOrgId":"123ADE4Y56",--十位字符的组织ID,是苹果开发证书的组织单位,appium可以通过十位组织单位ID找到相应的组织,如果是连接真机测试APP的话,必须要设置组织参数。
”xcodeSigningId": "iPhone Developer", --这里参数是固定的,就这样写
“wdaLocalPort":"8100" -- 默认手机连接MAC本使用的端口,默认是8100
 
 
注意: 连接真机时,测试app的打包签名证书必须要与xcodeOrgId里的一致,否则会报证书错误,错误代码是65。
 
11. 最后open session就可以了,边上手机以后,手机上会自动装一个webdriverapp的应用,然后才会启动要测试的app,如果要写自动化脚本的话,可以边操作边抓取相应的元素。
 
12. 这样连接真机应该是没问题了,然后自己如果写了测试脚本,跑脚本前先要安装相应的语言服务包,比如appium-python-client。
 
一切环境就绪了,可以开始搭测试框架了~~~~

MAC本上appium连接真机的更多相关文章

  1. 在Mac系统上配置Android真机调试环境

    在Mac系统上配置Android真机调试环境 mac上配置安卓环境还说挺方便的,真机调试也比win上要好一些.win上被各种软件强行安装了xxx助手. 在mac上就了一个干净的感觉. 下载Androi ...

  2. Appium 小白从零安装 ,Appium连接真机测试。

    以下是我个人在初次安装使用Appium时的过程,过程中遇到了一些问题,在这里也一一给出解决办法. Appium安装过程 先安装了 Node.js.在node的官网上下载的exe安装文件. 在node的 ...

  3. APPium连接真机输入框中输入的内容与代码中不一致

    今天解决了上一个问题,又碰到了一个新的问题. 问题:连接真机输入框中输入的内容与代码中不一致. 描述: 想实现登录页面输入用户名和密码自动登录,可是在输入用户名和密码的框中输入的内容总是与代码中的不一 ...

  4. Python+Appium自动化测试(2)-appium连接真机启动app

    app自动化测试的第一步,是启动被测app.appium环境搭建好后,我们就可以连接真机启动app了.环境为windows,Appium1.18.0,Android手机,被测app为今日头条app,让 ...

  5. Appium——连接真机,adb devices获取不到设备号

    连接真机后,使用 adb devices获取不到设备号. 1.检查usb接口是否正常,是否正常链接到电脑 2.手机开发者模式是否开启,usb调试是否开启 3.检查驱动是否正常 4.如果驱动显示黄叹号, ...

  6. 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下 ...

  7. mac上使用appium连接真机问题

    1.链接真机时一直报错 app is not install 日志如下: 解决办法:是因为lockdown挂了,在命令行输入sudo chmod -R 777 /var/db/lockdown/ 但是 ...

  8. appium通过WiFi连接真机进行测试

    http://www.th7.cn/Program/Android/201507/514602.shtml appium通过WiFi连接真机进行测试   2015-07-24 19:43:07CSDN ...

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

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

随机推荐

  1. 【T-SQL进阶】02.理解SQL查询的底层原理

    本系列[T-SQL]主要是针对T-SQL的总结. [T-SQL基础]01.单表查询-几道sql查询题 [T-SQL基础]02.联接查询 [T-SQL基础]03.子查询 [T-SQL基础]04.表表达式 ...

  2. 安装配置rsync服务端

    rsync是类unix系统下的数据镜像备份工具——remote sync.一款快速增量备份工具 Remote Sync,远程同步 支持本地复制,或者与其他SSH.rsync主机同步. rsync使用方 ...

  3. Java阶段性测试--知识点:数组,面向对象,集合、线程,IO流

    #Java基础测试 涉及知识点:数组,面向对象,重载,重写,继承,集合,排序,线程,文件流 一.多项选择题(可能是单选,也可能是多选) 1.下列标识符命名不合法的是(   D  ). A.$_Name ...

  4. [52PJ] Java面向对象笔记(转自52 1510988116)

    面向对象概念 面向对象三大特征:封装,继承,多态 面向对象编程(OOP,Object Oriented Programing)是相对于面向过程编程说的,之前写的代码基本都是纯的面向过程编程的,当项目复 ...

  5. 深入探索C++对象模型(四)

    Function语意学(The Semantics of Function) static member functions不可能做到的两点:(1)直接存取nonstatic数据,(2)被声明为con ...

  6. Innobackupex全备恢复(原理、演示)

    一.  Innobackupex恢复原理    After creating a backup, the data is not ready to be restored. There might b ...

  7. Docker化tomcat 并且使用maven热部署

    今天没事干 就把自己的tomcat  docker化并且使用maven实现热部署 特别记录一下~ 1.首先进行centos7的安装 就不在记录了 注意的是最好使用centos7 因为docker 依赖 ...

  8. B树和B+树的总结

    B树 为什么要B树 磁盘中有两个机械运动的部分,分别是盘片旋转和磁臂移动.盘片旋转就是我们市面上所提到的多少转每分钟,而磁盘移动则是在盘片旋转到指定位置以后,移动磁臂后开始进行数据的读写.那么这就存在 ...

  9. python爬虫之re正则表达式库

    python爬虫之re正则表达式库 正则表达式是用来简洁表达一组字符串的表达式. 编译:将符合正则表达式语法的字符串转换成正则表达式特征 操作符 说明 实例 . 表示任何单个字符 [ ] 字符集,对单 ...

  10. java知识点整理

    1 java 和Tomcat总结 脑图地址  (其中web 容器部分还需要继续完善,但是没找到相关文档) 跟着java Se 文档梳理了一下学习路线图(方便全面掌握要点,及时对自己查漏补缺),以及一些 ...