查看: 155|回复: 0

详解iOS和Android在测试上的不同

[复制链接]
发表于 2017-5-11 17:01:42 | 显示全部楼层 |阅读模式


只有了解iOSAndroid操作系统的不同设计理念,才能更好地设计测试用例,更全面地测试App


AndroidApp测试设备的碎片化


对于iOS操作系统,App只需要支持有限的设备和分辨率,不需要像Android测试App时操心设备的碎片化对App的影响。Google公司采用的是开放的策略,所以很多厂商都会对Android进行订制,使得采用Android操作系统的设备铺天盖地,Android的碎片化也很严重。


Android App更容易受到恶意软件的攻击


开放策略下导致Appapk安装文件被破解的几率比iOS要高一些,所以更需要确保App的安全。


iOSAndroid对于App间通信的处理方式不一样


iOS操作系统对于App的运行机制做出了限制,绝大多数情况下App进入后台后会马上进入suspendterminate状态,也就是说不能执行代码;iOS中也没有类似AndroidService的概念,但存在某些例外。


某些重要的任务,例如保存用户数据、网络下载等,可以申请一小段限定时间的后台运行时间,长度大概在600s左右,所以在短时间段内能进行的操作非常有限。


某些特点类型的App可以获得没有时间限制的后台运行,包括音乐播放类,音频录制类,定位/导航类,VoIP类,下载类,定期更新类。


Apple公司提供了iOS内的App调用协议URLSchema来处理。


AndroidiOS就是否支持扩展存储有所不同

iOSAndroidWidget的实现和使用不同

测试Android App对于DalvikART运行环境(RunTime)的兼容性

测试iOS App在特定设置下的行为


对于iOS App而言,在iOS 8出现之前Apple公司对于产品的升级,都会考虑到不同设备上分辨率的不一致,但是随着iOS 8iPhone 6以及6Plus的推出,iPhone 6以及6Plus上具备的放大显示的功能会让App在标准显示和放大显示的模式下,显示效果有所不同,所以测试人员需要对这两种模式下的显示效果进行测试。


iOS操作系统的内存管理机制以及对App使用内存的限制是很不透明的


由于iOS上并没有真正的多任务,也没有swap机制,所以iOS操作系统在内存不足时会先对App进行内存占用预警,如果App持续消耗内存直到iOS操作系统允许的最大值,iOS会直接“杀掉”App进程。


测试人员可以使用App所支持的iOS设备总内存最小的设备,使用Xcode来检查App对内存的使用是否超出了限制,尽量减少App对内存的不必要使用,顺便检查App是否有内存泄漏。


Android操作系统的内存管理机制更加透明,对App使用内存的限制也更加灵活

在不同Android设备上,每个App可以使用的内存量是不同的,测试人员可以通过打开/system/build.prop文件来查看App最大可用Dalvik内存大小是多少。

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表