【转】【iOS测试系列】常用测试小插件的使用
背景介绍
由于iOS系统的限制,在非越狱的自动化测试中无法实现一些常用的功能,比如不同应用之间来回切换、模拟全局的点击事件等等。但是在越狱的环境下,这些限制就不存在了,我们可以利用各种小插件来实现我们想要的自动化测试的功能,今天就给大家介绍一款插件,通过这款插件可以实现从安装、卸载应用的自动化过程。
IPA Installer Console — 安装ipa
首先介绍IPA Installer Console工具,顾名思义,就是通过命令行的方式安装一个ipa包,当然它可不是只能安装应用这么简单,还有一些其他的功能。安装好这个插件以后,我们可以通过ssh登录到设备,查看一下工具的使用说明。

通过调用命令:ipainstall + “应用的路径”就可以实现安装ipa包了,这里的路径可以是对路径,也可以是相对路径。比如说我在/var/mobile/Downloads/目录下有一个xxxx.ipa文件,那么我就可以调用下面的命令来安装这个应用:
ipainstaller /var/mobile/Downloads/xxxx.ipa
用法非常的简单,如果想安装完应用后删除ipa文件,可以调用:
ipainstaller –d /var/mobile/Downloads/xxxx.ipa
如果是当前设备已经安装了这个应用,而我不想再次安装浪费时间, 只想清空该应用的Documents目录和Resource目录的话,可以调用:
ipainstaller –c /var/mobile/Downloads/xxxx.ipa
在安装的过程中也会有一些log的输出,我们可以通过这些log以及该函数调用的返回值,来判断该应用是否安装成功。
IPA Installer Console — 卸载应用
有安装就会有卸载,卸载应用同样也是非常简单:
ipainstaller –u “应用的bundle identifier”
就是调用-u命令后面接上应用的bundle identifier即可。
那么问题来了,这里的bundle identifier如何获取呢?别急,下面就给大家介绍如何获取当前设备上所有应用的bundle identifier。
IPA Installer Console — 查看应用的bundle id
ipainstaller –l
调用这个命令以后,就会显示当前设备上安装的所有第三方应用的bundle identifier。这样你就可以找到自己想要的bundle identifier。
简单吧!!!这就是IPA Installer Console工具,可以帮助你轻松搞定自动化安装,卸载应用。
【转】【iOS测试系列】常用测试小插件的使用的更多相关文章
- 闲聊select和input常用的小插件
前言 在pc端的项目中,经常会用到表单标签,莫过于是select和input这两种,这两种相当常用.但往往原生的功能不尽人意,即使 input中type有n多属性,甚至连时间控件都有,但仍旧满足不了我 ...
- Web测试系列之测试工具
一Web功能测试工具MAXQ MAXQ是开源的Web功能测试工具. MAXQ是开源的Web功能测试工具.他的特点:1)简单易学;2)是一个轻量级的Web功能测试工具;3)可以自动录制WebBrowse ...
- 代码规范和常用的js插件以及测试工具
1.代码规范 .model层 1.1.1database file_proerty 1.1.2java fileProperty. 1.2.字段要有空指针 1.3.不创建爱数据库外键约束 1.4.已知 ...
- python 几种常用测试框架
测试的常用规则 一个测试单元必须关注一个很小的功能函数,证明它是正确的: 每个测试单元必须是完全独立的,必须能单独运行.这样意味着每一个测试方法必须重新加载数据,执行完毕后做一些清理工作.通常通过se ...
- iOS桌面小插件 Widget Extension
iOS桌面小插件 Widget Extension 这个插件时iOS14以后才出现的,基于SwiftUI 旧项目新建时可能一堆错误,其中一个时要把插件target 开发sdk版本设置为14.0以上 新 ...
- Web测试的常用测试用例与知识
1. Web测试中关于登录的测试 2. 搜索功能测试用例设计 3. 翻页功能测试用例 4. 输入框的测试 5. Web测试的常用的检查点 6. 用户及权限管理功能常规测试方法 7. Web测试之兼容性 ...
- ElasticSearch 2 (29) - 信息聚合系列之测试驱动
ElasticSearch 2 (29) - 信息聚合系列之测试驱动 摘要 我们可以用以下几页定义不同的聚合和它们的语法,但学习聚合的最佳途径就是用实例来说明.一旦我们获得了聚合的思想,以及如何合理地 ...
- iOS 单元测试和UI测试教程
原文:iOS Unit Testing and UI Testing Tutorial 作者:Audrey Tam 译者:kmyhy 编写测试不是为了追求刺激,测试是为了避免你崭新的 App 变成了充 ...
- Postman系列四:Postman接口请求设置环境变量和全局变量、测试沙箱和测试断言、测试集运行与导入数据文件
一:Postman中接口请求设置环境变量和全局变量 全局变量和环境变量可以通过Pre-request Script和Tests设置,会在下面测试沙箱和测试断言中讲到. 全局变量的设置:官网参考http ...
随机推荐
- InnerHTML属性的XSS利用
来自:http://www.myhack58.com/Article/html/3/7/2011/32395.htm innerHTML 是个奇怪的HTML属性,不是W3C标准支持的,但几乎所有的厂商 ...
- android中获取某段程序的执行时间
Date startDate = new Date(System.currentTimeMillis()); 在收到设备返回数据之后添加如下语句: Date endDate = ...
- 【转】MVC4验证用户登录特性实现方法
在开发过程中,需要用户登陆才能访问指定的页面这种功能,微软已经提供了这个特性. // 摘要: // 表示一个特性,该特性用于限制调用方对操作方法的访问. [AttributeUsage(Attribu ...
- Qt 5.3更新无数,更改C++控制台输出最为赞
迁移至 多色网
- js 动态创建变量
js 动态创建变量 CreationTime--2018年7月2日15点04分 Author:Marydon 1.实现方式 通过eval()实现 2.代码实现 /** * 声明一个函数 * @ex ...
- Linux命令-文件处理命令:cat
cat /etc/issue 查看etc目录下面的issue文件内容(issue是linxu系统的欢迎文件) cat -n /etc/issue 查看文件内容的时候显示行号 tac /etc/issu ...
- some nets were not able to be matched
原因是:PCB画好之后再次更改原理图,将更改后的原理图更新至PCB的时候会导致原理图中新生成的网络和PCB中原有的网络名不匹配 解决办法:PCB---设计----网络表---编辑网络,把PCB中不匹配 ...
- SIFT 、Hog 、LBP 了解
SIFT.HOG.LBP,这三者都属于局部特征. 一.三者原理上的区别 1.SIFT:Scale-Invariant Feature Taransform,尺度不变特征变换. 尺度空间的极值检测:搜索 ...
- sql server数据库查询超时报错
报错信息如下: 链接服务器"DBJointFrame"的 OLE DB 访问接口 "SQLNCLI10" 返回了消息 "查询超时已过期". ...
- CYQ学习主要摘要3
1:MAction:增加ResetTable功能 增加ResetTable功能:减少New MAction的个数2:MAction:增加在Update/Insert/Fill/ResetTable失 ...