前言

做过iOS上app测试的小伙伴应该都知道,普通用户安装app都是从appstore下载安装,安装测试版本的app,一般就是开发给的二维码扫码安装,

或者开发给个.ipa的安装包文件,通过itools安装。对于没有iPhone真机的小伙伴,想在iOS模拟器上安装app测试可不是那么容易的事情。

一、启动iOS Simulator

1.Xcode>Open Developer Tool>iOS Simulator,打开后在hardware里面选对应的iPhone版本就能启动模拟器了

2.第二种方法,通过指令启动模拟器:

$ xcrun instruments -w 'device name'

注意:这里的device name一定要是这种格式:iPhone 6 (10.3)

二、拿到.app包

1.这里科普下了(敲黑板,记重点),在真机上是安装.ipa的包,在模拟器上是安装.app的包。

这是两种不同的打包方法,也就是说从appstore这种渠道下载的.ipa是无法安装到模拟器上的,必须要找你们开发专门针对iOS模拟器打个模拟器的包,后缀是.app 。

(别问我是怎么知道的,都是泪~~~)

2.以https://github.com/appium/sample-code.git 这里的一个.app包为例,在路径/sample-code/apps/TestApp/build/release-iphonesimulator下有个TestApp.app

这种才是可以直接安装到iOS模拟器上的

3.通过指令安装到模拟器上:

$ xcrun simctl install booted /path/to/xxx.app

备注:/path/to/xxx.app 这个是.app包的绝对路径,可以输入前面的指令,然后找到这个包,直接拽到终端就行

4.卸载app的指令:

$ xcrun simctl uninstall booted xxx.app

xxx.app就是包名,这里不需要路径,如:TestApp.app

三、xcode-select

1.要是遇到xcrun报错:xcrun: error: active developer path ("/Applications/Xcode.app/Contents/Developer") does not exist

就根据报错提示,输入提示的指令解决:

$ sudo xcode-select --switch path/to/Xcode.app

同样,这里path/to/Xcode.app也是Xcode在application里的绝对路径,直接找到图标拽到终端就行

2.或者输入这个也可以:

$ xcode-select --install

四、总结

1.在iOS模拟器上必须是通过xcode打出来的.app的安装包,真机的包(.ipa)选择Debug-iphone os,模拟器的包(.app)选择Debug-iphone Simulator

2.有以下几个方法都能安装到模拟器上:

--运行脚本,会自动安装上去,参考:Appium+python自动化17-启动iOS模拟器APP源码案例

--通过指令安装,也就是这篇讲的

--通过appium上的配置也能安装,下篇讲appium调试app时候定位元素

--要是会xcode,可以直接拿到拿到源码,用xcode直接运行上去

在学习过程中有遇到疑问的,可以appium+python QQ群交流:330467341

Appium+python自动化19-iOS模拟器(iOS Simulator)安装自家APP的更多相关文章

  1. Appium+python自动化23-Android夜神模拟器

    前言 Android SDK虽然也自带了模拟器,但是那速度会让你怀疑人生,并且不稳定经常卡死异常.夜神模拟器可以说是android模拟器里面的一个神器. 环境安装 1.官网下载地址:https://w ...

  2. appium+python自动化45-夜神模拟器连不上(adb server version (36) doesn't match this client (39); killing...)

    前言 最新下了个最新版的夜神模拟器,然后adb devices发现连不上模拟器了,报adb server version (36) doesn't match this client (39); ki ...

  3. Appium+python自动化-Android夜神模拟器

    前言 Android SDK虽然也自带了模拟器,但是那速度会让你怀疑人生,并且不稳定经常卡死异常.夜神模拟器可以说是android模拟器里面的一个神器. 环境安装 1.官网下载地址:https://w ...

  4. Appium+python自动化

    名称 链接地址 Appium+python自动化8-Appium Python API(上) http://mp.weixin.qq.com/s/WvpT5oRrYY22avI95FuypQ Appi ...

  5. Appium+python自动化19-iOS模拟器(iOS Simulator)安装自家APP【转载】

    前言 做过iOS上app测试的小伙伴应该都知道,普通用户安装app都是从appstore下载安装,安装测试版本的app,一般就是开发给的二维码扫码安装, 或者开发给个.ipa的安装包文件,通过itoo ...

  6. Appium+python自动化20-查看iOS上app元素属性

    前言 学UI自动化首先就是定位页面元素,玩过android版的appium小伙伴应该都知道,appium的windows版自带的Inspector可以定位app上的元素 Mac版的appium1.6的 ...

  7. Appium+python自动化20-查看iOS上app元素属性【转载】

    前言 学UI自动化首先就是定位页面元素,玩过android版的appium小伙伴应该都知道,appium的windows版自带的Inspector可以定位app上的元素Mac版的appium1.6的版 ...

  8. 【整理】Xcode中的iOS模拟器(iOS Simulator)的介绍和使用心得

    [整理]Xcode中的iOS模拟器(iOS Simulator)的介绍和使用心得 iOS模拟器简介 iOS功能简介 iOS模拟器,是在Mac下面开发程序时,开发iOS平台的程序时候,可以使用的辅助工具 ...

  9. Appium+python自动化8-Appium Python API

    Appium+python自动化8-AppiumPython API   前言: Appium Python API全集,不知道哪个大神整理的,这里贴出来分享给大家. 1.contexts conte ...

随机推荐

  1. Copy List with Random Pointer——技巧

    A linked list is given such that each node contains an additional random pointer which could point t ...

  2. JAVA编程思想读书笔记(五)--多线程

    接上篇JAVA编程思想读书笔记(四)--对象的克隆 No1: daemon Thread(守护线程) 参考http://blog.csdn.net/pony_maggie/article/detail ...

  3. 洛谷P2471 [SCOI2007] 降雨量 [RMQ,模拟]

    题目传送门 降雨量 题目背景 07四川省选 题目描述 我们常常会说这样的话:“X年是自Y年以来降雨量最多的”.它的含义是X年的降雨量不超过Y年,且对于任意Y<Z<X,Z年的降雨量严格小于X ...

  4. Python函数系列-Random

    import random i = int(input('输入第一个数:')) j = int(input('输入第二个数:')) l = int(input('输入需要产生的个数:')) k=0 w ...

  5. cocos2d-android 使用 cocos2d 绘图

    韩梦飞沙  韩亚飞  313134555@qq.com  yue31313  han_meng_fei_sha cocos2d-android-1 https://github.com/ZhouWei ...

  6. 「UOJ351」新年的叶子

    「UOJ351」新年的叶子 题目描述 有一棵大小为 \(n\) 的树,每次随机将一个叶子染黑,可以重复染,问期望染多少次后树的直径会缩小. \(1 \leq n \leq 5 \times 10^5\ ...

  7. BZOJ 4516: [Sdoi2016]生成魔咒 后缀自动机 性质

    http://www.lydsy.com/JudgeOnline/problem.php?id=4516 http://blog.csdn.net/doyouseeman/article/detail ...

  8. bzoj 3685: 普通van Emde Boas树

    3685: 普通van Emde Boas树 Description 设计数据结构支持:1 x  若x不存在,插入x2 x  若x存在,删除x3    输出当前最小值,若不存在输出-14    输出当 ...

  9. HTML && xml 的区别

    HTML && xml 的区别 HTML 超文本标记语言 xml 可扩展标记语言 jsp  表面是一个HTML页面,本质是一个servlet HTML  超文本标记语言 HTML 是一 ...

  10. bzoj 1269 bzoj 1507 Splay处理文本信息

    bzoj 1269 题目:http://www.lydsy.com/JudgeOnline/problem.php?id=1269 大致思路: 用splay维护整个文本信息,splay树的中序遍历即为 ...