简单介绍一下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. OpenGL教程(3)——第一个三角形

    我们已经学会了创建窗口,这一讲,我们将学习如何使用现代OpenGL画一个三角形.在开始写代码之前,我们需要先了解一些OpenGL概念.本文会很长,请大家做好心理准备~ 注:以下OpenGL概念翻译自h ...

  2. php 面向对象的三大特性

    <?phpheader("Content-type:text/html;charset=utf-8");/*封装目的:为了使类更加安全做法:1.将成员变量变成私有2.做一个成 ...

  3. 利用Border画三角形

    边框 1.边框其实并不是矩形,而是梯形 2.利用边框画三角形: div.a{ width:0px; height:0px; border:10px white solid; border-top-co ...

  4. Java基础——关于访问权限的一道例题

    一.回顾访问修饰符 ==public:被它修饰的类,属性,方法,不仅可以跨类访问,而且可以跨包(package)访问 ==private:可以修饰数据成员,构造方法,方法,不能修饰类,被它修饰的成员只 ...

  5. RMAN备份与恢复(一)--认识RMAN

    RMAN(Recovery Manager)是Oracle恢复管理器的简称,是集数据库备份(backup).修复(restore)和恢复(recover)于一体的工具.接下来了解一下RMAN中的几个重 ...

  6. 多重bash登入的history写入问题

    问题:如果一个用户同时开好几个 bash 接口, 这时~/.bash_history中会写入哪个bash的历史命令记录? 答:所有的bash 都有自己的 HISTSIZE 笔记录在内存中,因为等到注销 ...

  7. 微信小程序开发过程中一些经验总结

    1.微信开发者工具报错,微信小程序最低需支持tls1.2版本的问题 原因是服务器不支持ssl的高版本,解决方法: 在/etc/nginx/conf.d文件下,把"ssl_protocols  ...

  8. Vue实战Vue-cli项目构建(Vue+webpack系列之一)

    用Vue比较长一段时间了,大大小小做了一些项目,最近想总结一下知识点,出一个Vue+webpack系列,先从项目构建说起--vue-cli. 由于是Vue+webpack这里就不赘述git那些东西,默 ...

  9. c++,函数名不要和某个类名相同 (syntax error : missing ';' before identifier....)

    直接上代码: // outside.h class Outside { private: class Inner { public: Inner(Outside& out) : out_(ou ...

  10. openfire极限优化

    日志优化   默认是 用info 级别,最好不用openfire原生的打日志方式.   离线消息用存储不打回方式,不要用打回方式   xmpp.offline.type=store_and_drop ...