背景介绍

由于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测试系列】常用测试小插件的使用的更多相关文章

  1. 闲聊select和input常用的小插件

    前言 在pc端的项目中,经常会用到表单标签,莫过于是select和input这两种,这两种相当常用.但往往原生的功能不尽人意,即使 input中type有n多属性,甚至连时间控件都有,但仍旧满足不了我 ...

  2. Web测试系列之测试工具

    一Web功能测试工具MAXQ MAXQ是开源的Web功能测试工具. MAXQ是开源的Web功能测试工具.他的特点:1)简单易学;2)是一个轻量级的Web功能测试工具;3)可以自动录制WebBrowse ...

  3. 代码规范和常用的js插件以及测试工具

    1.代码规范 .model层 1.1.1database file_proerty 1.1.2java fileProperty. 1.2.字段要有空指针 1.3.不创建爱数据库外键约束 1.4.已知 ...

  4. python 几种常用测试框架

    测试的常用规则 一个测试单元必须关注一个很小的功能函数,证明它是正确的: 每个测试单元必须是完全独立的,必须能单独运行.这样意味着每一个测试方法必须重新加载数据,执行完毕后做一些清理工作.通常通过se ...

  5. iOS桌面小插件 Widget Extension

    iOS桌面小插件 Widget Extension 这个插件时iOS14以后才出现的,基于SwiftUI 旧项目新建时可能一堆错误,其中一个时要把插件target 开发sdk版本设置为14.0以上 新 ...

  6. Web测试的常用测试用例与知识

    1. Web测试中关于登录的测试 2. 搜索功能测试用例设计 3. 翻页功能测试用例 4. 输入框的测试 5. Web测试的常用的检查点 6. 用户及权限管理功能常规测试方法 7. Web测试之兼容性 ...

  7. ElasticSearch 2 (29) - 信息聚合系列之测试驱动

    ElasticSearch 2 (29) - 信息聚合系列之测试驱动 摘要 我们可以用以下几页定义不同的聚合和它们的语法,但学习聚合的最佳途径就是用实例来说明.一旦我们获得了聚合的思想,以及如何合理地 ...

  8. iOS 单元测试和UI测试教程

    原文:iOS Unit Testing and UI Testing Tutorial 作者:Audrey Tam 译者:kmyhy 编写测试不是为了追求刺激,测试是为了避免你崭新的 App 变成了充 ...

  9. Postman系列四:Postman接口请求设置环境变量和全局变量、测试沙箱和测试断言、测试集运行与导入数据文件

    一:Postman中接口请求设置环境变量和全局变量 全局变量和环境变量可以通过Pre-request Script和Tests设置,会在下面测试沙箱和测试断言中讲到. 全局变量的设置:官网参考http ...

随机推荐

  1. vsftpd 本地用户无法登陆 530 Login incorrect

    查看日志,监测用户无法登陆的错误日志 tail -f /var/log/secure 查看vsFTPd配置 /etc/vsftpd/vsftpd.conf 通过查看日志,发现用户的密码已经过期了... ...

  2. java实现顺序链表

    C&C++是那么难学,以至于我连指针是什么都不知道.所以只能学习java了. 如今想用java实现N年前学过“数据结构(c语言版)”却又是那么吃力! 慢慢练吧! 写此博客,仅标记自己学过数据结 ...

  3. NGUI Tutorial 4 ScrollView

    一.createScrollView 1.First, select the panel you want to be your scroll view and right-click anywher ...

  4. Window上python开发--4.Django的用户登录模块User

    Android系统开发交流群:484966421 OSHome. 微信公众号:oshome2015 在搭建站点和web的应用程序时,用户的登录和管理是差点儿是每一个站点都必备的. 今天主要从一个实例了 ...

  5. LeetCode 110 Balanced Binary Tree(平衡二叉树)(*)

    翻译 给定一个二叉树,决定它是否是高度平衡的. (高度是名词不是形容词-- 对于这个问题.一个高度平衡二叉树被定义为: 这棵树的每一个节点的两个子树的深度差不能超过1. 原文 Given a bina ...

  6. 【Django】ImportError: cannot import name 'execute_manager'

    错误描述 在使用Django 2.0 启动项目的时候,报错如下: ImportError: cannot import name 'execute_manager' 修改前后代码对比 修改前的代码 # ...

  7. 【LeetCode】103. Binary Tree Zigzag Level Order Traversal

    Binary Tree Zigzag Level Order Traversal Given a binary tree, return the zigzag level order traversa ...

  8. EL表达式中fn函数

    JSTL 使用表达式来简化页面的代码,这对一些标准的方法,例如bean的getter/setter方法,请求参数或者context以及 session中的数据的访问非常方便,但是我们在实际应用中经常需 ...

  9. mosquitto ---配置SSL/TLS

    在服务器电脑上面创建myCA文件夹, 如在/home/qa/ 文件夹下使用命令, mkdir myCA 然后执行以下命令,我们将创建并使用其他用户没有权限访问的目录. sudo chmod 700cd ...

  10. python --循环对象

    转自:http://www.cnblogs.com/vamei/archive/2012/07/09/2582499.html 这一讲的主要目的是为了大家在读Python程序的时候对循环对象有一个基本 ...