IOS 和 Android 的 APP 测试区别

本贴最后更新于 1561 天前,其中的信息可能已经沧海桑田

前言:

鉴于移动互联网的高速发展,各种APP估计已经装满了大家的手机。
那么对于现在的测试工程师们而言,需要APP的测试经验也是越来越有需求了。
实际上,在应聘的过程中,大家遇到的面试面试题之一:web和APP的测试区别,这个就不需要过多的讲了。
今天就给大家讲一个问的比较少的,也是大家没怎么去思考过的一个问题:IOS和Android的APP测试区别

从功能上区分:

物理按键

Android:独有3个物理按键的功能(菜单,主页面,返回),尤其是返回键,是一定要测试的功能点

IOS:所有的返回上一层,只能靠页面功能实现

安装

兼容性

原生技术支持

Android:以微信举例,长按删除,顶置聊天等操作,左滑则会进入到通讯录菜单
image.png

IOS:以微信举例,长按没有任何反应,左滑则会出现标记未读和删除操作
image.png

支付方式

Android:对于一些有内购功能的APP,Android是直接调用第三方支付渠道的

IOS:需要先在你的APP store里绑定你的支付方式,然后通过APP store去完成支付操作
PS:Apple对于一些非官方的支付渠道是不允许上架的

从系统底层上区分:

运行机制

Android:虚拟机运行机制

  1. 所有的应用程序都是运行在虚拟机中,用户界面其实是由虚拟机传递的,并且通过虚拟机,Android的任何程序都就可以轻松访问其他程序文件
  2. 所以Android的应用程序都是运行在RAM里面的,所以会发现有时候Android用着用着就开始有点卡了
    ps:补充知识,手机中的RAM和ROM,可以分别对应电脑的内存和硬盘这么理解

ios:沙盒运行机制

  1. 每个程序都有自己的虚拟地址空间。所以,程序之间是都不能进行访问
  2. 默认只会将应用的最后运行数据,记录在RAM里面

程序后台运行机制

Android:任何程序都可以在系统后台运行

IOS:第三方程序不能在系统后台运行

消息推送渠道

Android:可以使用第三方或者自建平台进行消息推送,但是一般都是使用第三方的

IOS:消息推送渠道由苹果官方提供的

页面渲染机制

Android:系统的优先级响应层级为:Application-->Framework-->Library-->Kernal,而Android系统的图像处理这部分功能是属于Library层的,所以,当你触摸屏幕之后Android系统首先会激活application应用,然后是framework框架,然后才是Library屏幕,最后是Kernal核心架构

IOS:系统的优先级响应层级为:Touch-->Media-->Service-->Core,而IOS系统的图像处理这部分功能是属于Touch层的,所以,当你触摸了屏幕之后,系统就会最优先去处理Touch层,然后才是Media媒体,Service服务以及核心Core。

系统的开源

Android:系统开源,有非常多的第三方测试工具可以辅助测试
IOS:系统非开源,严重依赖mac环境

1 操作
zymnstlm 在 2020-08-06 14:46:11 更新了该帖
回帖
请输入回帖内容 ...