随着移动互联网的发展,以及智能手机的普及,各种各样的 APP 层出不穷,大家可以数一数自己手机上安装的 APP,随随便便几十个,上百个,所以现在 APP 测试的需求也越来越大。那么,现在最主流的移动端操作系统就是 Android 和 iOS ,Android 系统因为是开源的,测试工具以及各种测试教程都非常丰富,但是 iOS 因为苹果系统的私密性,导致 iOS 测试的教程相对来说少很多。那么,今天我们来说说 iOS APP 测试具体要如何进行呢?

第一步: 测试版本的提交和获取。

Android APP 的测试开发直接打包一个 apk 包发送给测试,测试可以安装到任何 Android 设备开始测试工作;但是 iOS 不可以,想要在 iOS 系统里安装 APP,必须要得到苹果的授权。那么,要得到苹果的授权,内部版本可以有以下几种方式:

FIR:通过加设备 UDIID(Unique Device Identifier)到开发者账号的白名单中来进行安装和测试。所以,一般测试员需要先收集测试设备的 UDID 提供给开发,开发手动添加后,测试即可用这个 UDID 的设备安装 iOS 的内测版本的应用;一个开发者账号可以加 100 个账号,不能多可以少,这种方式不需要苹果审核,适合频繁需要打包测试,但是一个个收集测试设备 UDID 比较麻烦;

如何获取 UDID 可以通过 iTunes 工具或者 iTools 工具连接设备获取:

  1. 电脑安装 iTunes 工具

  1. 数据线连接手机和电脑,然后电脑点击运行 iTunes:

728 x 318 1005 x 439

688 x 393

点击这个设备图片,可以跳转到手机操作界面:

634 x 294

点击开始使用后,就可以看到手机的信息,点击序列号之后就会看到对应的 UDID 了:

728 x 264 781 x 283

701 x 308

  1. 右键可以复制下来,提供给开发,开发添加到自己的开发者账号即可。这样,你的这个设备就可以开始安装测试 APP 进行测试了!

当然,除了这种安装测试测试版本的方式,还有一些其他的方法也可以,比如:

TestFlight:这是苹果官方测试工具,分为内部和外部测试。内部测试的话不需要走苹果审核,但是可以添加的测试人员只有 25 个(通过 appleID 邮箱进行添加);外部测试需要通过苹果审核后可以开放给至多 10000 人测试,不过需要额外支付费用。因为要经过苹果的审核,时间周期会比较久,所以这种方式比较适合版本比较稳定,不需要频繁打包的测试。

不过一般公司的测试版本的提交都是通过内部测试这种形式,可以添加的测试人员比较有限。

蒲公英:蒲公英是第三方提供专业的手机应用内测服务,您只需将需要内测的应用上传至蒲公英,蒲公英会自动生成下载链接和二维码,内测用户通过在手机上扫描二维码,即可将内测应用安装至手机等设备中进行测试。不过需要通过扫描这个二维码安装成功,测试设备也是同样需要提供 UDID,添加到开发者账号中。这个工具比起 FIR 更加方便是直接扫描二维码就可以收集 UDID,并且直接扫描二维码就可以成功安装应用。

728 x 324 1104 x 492

703 x 318

安装好了之后,即可扫二维码进行应用的安装了。

第二步:应用测试的执行

安装好应用之后,就应该进行测试的执行了。关于测试执行就跟其他的 APP 测试差不多了,分析需求,提炼测试点,编写测试用例,并执行记录 bug,以及跟踪 bug。

不过,这里要提的是 iOS 测试需要特别注意的两点:

1.兼容性测试。因为苹果系统没有开源,所以类型没有 Android 系统那么多元化,兼容性测试需要考虑系统的版本和屏幕大小/分辨率即可。那么如何选取设备呢?综合考虑用户使用量最多的系统版本和屏幕大小,以及可以参考一些数据选择比较主流的设备和系统进行测试。比如下图就是某统计网站统计到的 iOS 机型和系统使用量的统计数据:

686 x 548

675 x 541

参考上面的数据,我们就可以选择 iPhone11,iPhonex,iPhone7 plus 这几款机型,配备 iOS13.6, 14.1,14.0 这几个系统版本进行测试。 当然,如果你们的应用有特殊用户的需求,肯定要以用户需求为准。

2 .APP 的日志收集:测试 APP 的时候经常会发生一些闪退、ANR 的现象,而且这种现象很多时候都不是必现的,所以为了帮助开发修复这些 bug,我们就需要收集到这些 crash 和 ANR 的日志,来帮助定位和分析问题。

那么,iOS 手机如何收集日志呢?如果没有 mac 电脑,可以用 iTunes 或者 iTools 这个工具来同步收集手机端的日志:

首先, 用数据线将手机和电脑连接起来,打开电脑里的 iTunes 工具,识别出来手机后, 点击下面的“同步”按钮:

728 x 458 1336 x 841

这样可以把手机里的资料信息同步到电脑里。

然后 , 等同步完成之后,去到电脑里的以下目录:

C:\Users\用户名\AppData\Roaming\Apple Computer\Logs\CrashReporter\MobileDevice\tricy 的 iPhone

找到对应的设备,打开就会开到这个设备的所有生成的日志文件,寻找到对应的 APP 的问名字的文件,定位到问题出现的时间附近的 error 日志,发给开发或者贴到 bug 的附件即可。

683 x 412

第三步:测试完成,发布上线

APP 测试完成之后,需要提交到 AppStore 中才能够让所有的普通用户安装冰使用,而上传到苹果应用商店,区别于 Android 的应用市场, 苹果的审核非常严格。我们经常看到 Android 应用已发布,立马可以在各大商店进行下载,但是苹果一般需要审核 3 天-1 周作业左右,如果失败了,还需要更久。

具体苹果如何考核以及开发需要提交哪些材料是开发会去操作的,测试需要关注一下上线后,下载最新的版本,做一下主流程的测试,确保线上环境是 ok 的。

本文由柠檬班 tricy 老师原创,转载需注明出处!
想了解更多咨询的同学,可以加辅导员领取相关学习资料:qd20150815  备注:CSDN

IOS APP 测试方法和测试工具大揭秘相关推荐

  1. 轻松做性能测试,月入3万的主流测试工具大揭秘

    在为大家介绍性能测试工具以前,先让我们一起回顾一下什么是性能测试. 1.为什么需要性能测试? 举个例子.下图是一张交通图.图中的车流类似于性能测试中的数据,图中的车道.十字路口就相当于数据流量的规则和 ...

  2. FireEye红队失窃工具大揭秘之:分析复现Zoho ManageEngine RCE (CVE-2020-10189)

     聚焦源代码安全,网罗国内外最新资讯! 前言 最近,全球领先的网络安全公司 FireEye 疑遭某 APT 组织的攻击,其大量政府客户信息遭越权访问,且红队工具被盗.虽然目前尚不清楚这些红队工具将被如 ...

  3. 论述软件测试方法及其应用,软件测试方法及测试工具应用

    软件测试方法及测试工具应用 介绍了软件测试的过程及方法,重点分析了几种常用软件测试工 (本文共3页) 阅读全文>> 轨道交通自动售检票(automatic fare collection, ...

  4. FireEye 红队失窃工具大揭秘之:分析复现 Zoho 任意文件上传漏洞(CVE-2020-8394)

     聚焦源代码安全,网罗国内外最新资讯! 前言 最近,全球领先的网络安全公司 FireEye 疑遭某 APT 组织的攻击,其大量政府客户信息遭越权访问,且红队工具被盗.虽然目前尚不清楚这些红队工具将被如 ...

  5. FireEye 红队失窃工具大揭秘之:分析复现 Confluence路径穿越漏洞 (CVE-2019-3398)

     聚焦源代码安全,网罗国内外最新资讯! 前言 最近,全球领先的网络安全公司 FireEye 疑遭某 APT 组织的攻击,其大量政府客户信息遭越权访问,且红队工具被盗.虽然目前尚不清楚这些红队工具将被如 ...

  6. FireEye 红队失窃工具大揭秘之:分析复现SolarWinds RCE 0day (CVE-2020-10148)

     聚焦源代码安全,网罗国内外最新资讯! 前言 最近,全球领先的网络安全公司 FireEye 疑遭某 APT 组织的攻击,其大量政府客户信息遭越权访问,且红队工具被盗.虽然目前尚不清楚这些红队工具将被如 ...

  7. iOS APP真机测试及上架App Store流程记录

    上架基本需求资料 1.苹果开发者账号(如还没账号先申请-苹果开发者账号申请教程) 2.开发好的APP 通过本篇教程,可以学习到ios证书申请和打包ipa测试上架的完整流程,中途可能会遇到一些报错,一般 ...

  8. 年轻人不讲武德!200个网络渗透测试工具大汇总

    最近有粉丝私信我说能不能写一期资料整理的文章 那么....它来了! 以下工具适合渗透测试人员,安全研究人员. 可以通过以下命令检查所有的工具: git clone --recursive https: ...

  9. 轻松做性能测试,月入3万的主流测试工具 大 揭 秘

    在为大家介绍性能测试工具以前,先让我们一起回顾一下什么是性能测试. 1.为什么需要性能测试? 举个例子.下图是一张交通图.图中的车流类似于性能测试中的数据,图中的车道.十字路口就相当于数据流量的规则和 ...

最新文章

  1. 【团队】 冲刺一(9/10)
  2. 羊皮卷的故事-第十章-羊皮卷之三
  3. 帕秋莉·诺蕾姬 (Standard IO)
  4. python读取sqlserver数据库方法_SQLServer数据库之Python读取配置文件,并连接数据库SQL Server...
  5. YbtOJ#912-神秘语言【结论,欧拉定理】
  6. Laravel Composer 命令大全
  7. android 底部动画,Android实现360手机助手底部的动画菜单
  8. puppet 安装详解
  9. JSONObject遍历
  10. 如何获取HTML元素所对应的javascript对象?
  11. 手机变慢怎么办?复位、重置可解决
  12. 云南国税网上办税无法打印发票的解决办法
  13. 操作系统第2章作业题答案
  14. 华硕固件无线打印机服务器设置,华硕路由器远程打印机LPD设置-Windows.pdf
  15. python educoder苹果梨子_pythoneducoder苹果梨子煮水的功效_苹果梨子汤的功效
  16. 目标检测入门实战:贪吃蛇小游戏
  17. 他是阿里顶尖科学家,扛起国产分布式数据库大旗,性能超Oralce 20倍!
  18. 从eclips到idea
  19. java搜索拉钩_java实现拉钩网上的FizzBuzzWhizz问题示例
  20. MAC地址是怎么保证全球唯一的

热门文章

  1. 3dsnbsp;max基础材质初学者必读——陶瓷质感表现(11)
  2. 虚拟机有网,主机没有网
  3. windows如何打开.key keynote文件
  4. Soft Diffusion
  5. STM32开发基础知识——定时器
  6. 推荐|别让职业生涯规划毁掉你的成长
  7. 独立游戏开发日志:2021年2月14日 斜面攀爬
  8. 锤子开源 Smartisan T1/T2、坚果 Pro 等手机内核源代码
  9. 程序员如何管理自己的代码
  10. LMS、kalman、RLS的Matlab仿真