随着移动互联网的发展,以及智能手机的普及,各种各样的 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 工具连接设备获取:

  • 电脑安装 iTunes 工具
  • 数据线连接手机和电脑,然后电脑点击运行 iTunes:
  • 点击这个设备图片,可以跳转到手机操作界面:
  • 点击开始使用后,就可以看到手机的信息,点击序列号之后就会看到对应的 UDID 了:
  • 右键可以复制下来,提供给开发,开发添加到自己的开发者账号即可。这样,你的这个设备就可以开始安装测试 APP 进行测试了!

当然,除了这种安装测试测试版本的方式,还有一些其他的方法。

TestFlight

这是苹果官方测试工具,分为内部和外部测试。内部测试的话不需要走苹果审核,但是可以添加的测试人员只有 25 个(通过 appleID 邮箱进行添加)。

外部测试需要通过苹果审核后可以开放给至多 10000 人测试,不过需要额外支付费用。

因为要经过苹果的审核,时间周期会比较久,所以这种方式比较适合版本比较稳定,不需要频繁打包的测试。

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

蒲公英

蒲公英是第三方提供专业的手机应用内测服务,您只需将需要内测的应用上传至蒲公英,蒲公英会自动生成下载链接和二维码。

内测用户通过在手机上扫描二维码,即可将内测应用安装至手机等设备中进行测试。

不过需要通过扫描这个二维码安装成功,测试设备也是同样需要提供 UDID,添加到开发者账号中。

这个工具比起 FIR 更加方便是直接扫描二维码就可以收集 UDID,并且直接扫描二维码就可以成功安装应用。

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

应用测试的执行

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

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

兼容性测试

因为苹果系统没有开源,所以类型没有 Android 系统那么多元化,兼容性测试需要考虑系统的版本和屏幕大小/分辨率即可。

那么如何选取设备呢?综合考虑用户使用量最多的系统版本和屏幕大小,以及可以参考一些数据选择比较主流的设备和系统进行测试。

比如下图就是某统计网站统计出的 iOS 机型和系统使用量的统计数据:

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

APP 的日志收集

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

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

  • 首先, 用数据线将手机和电脑连接起来,打开电脑里的 iTunes 工具,识别出来手机后, 点击下面的“同步”按钮:
  • 这样可以把手机里的资料信息同步到电脑里。然后 , 等同步完成之后,去到电脑里的以下目录:C:\Users\用户名\AppData\Roaming\AppleComputer\Logs\CrashReporter\MobileDevice\tricy 的 iPhone
  • 找到对应的设备,打开就会开到这个设备的所有生成的日志文件,寻找到对应的 APP 的问名字的文件,定位到问题出现的时间附近的 error 日志,发给开发或者贴到 bug 的附件即可。

测试完成,发布上线

APP 测试完成之后,需要提交到 AppStore 中才能够让所有的普通用户安装并使用,而上传到苹果应用商店,区别于 Android 的应用市场, 苹果的审核非常严格。

我们经常看到 Android 应用已发布,立马可以在各大商店进行下载,但是苹果一般需要审核 3 天-1 周作业左右,如果失败了,还需要更久。

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

获取往期阿里测开工程师精讲资料、精讲视频、Jmeter、TestOps架构、脚本编写技巧、Fiddler进阶抓包、接口自动化测试实战等等技术,可加入软件测试学习交流群:785128166。

公众号:程序员二黑

好东西要和朋友一起分享哦

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

  1. IOS APP 测试方法和测试工具大揭秘

    随着移动互联网的发展,以及智能手机的普及,各种各样的 APP 层出不穷,大家可以数一数自己手机上安装的 APP,随随便便几十个,上百个,所以现在 APP 测试的需求也越来越大.那么,现在最主流的移动端 ...

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

最新文章

  1. debian安装oracle jdk
  2. XML序列化以及新增节点XMLHelper
  3. 分数序数之和c语言,用c语言求解:有一分数序列2/1,3/2,5/3,8/5,13/8,21/13,…求这个数列的前20项之和....
  4. tiny4412u-boot烧写及根文件系统制作(不进入终端问题)
  5. java 封装api_关于java 封装某个功能为api形式供其他用户调用的问题
  6. 第三章项目管理过程重点--转载
  7. 【java算法】二分查找算法详解
  8. Deprecated: Function eregi() is deprecated in ……【解决方法】
  9. 哈工大计算机学院人才招聘,计算机学院教师赴澳大利亚进行学术访问及人才招聘...
  10. AI,让大海永远蔚蓝如诗
  11. 服务器声卡硬件安装,虚拟声卡,详细教您怎么安装虚拟声卡
  12. 51单片机——外部中断
  13. c语言日历显示系统,C语言实现显示日历
  14. 玩转地球: 如何利用SAS绘制现代化地图(附代码)
  15. 无线技术—安全认证技术
  16. Python while语句2021-08-27
  17. 说说 Pluma 插件管理框架
  18. placement new的标准用法及用途
  19. 百度搜索简单使用 以及 搜书网址
  20. Qt中使用qrc管理和使用资源文件(转)

热门文章

  1. 什么是计算机病毒?中国黑客教父告诉你
  2. ruby中调用dll的诡异错误
  3. IP归属地解析之离线纯真数据库分享
  4. 《数据库原理MySQL》第三次上机实验
  5. 管家婆服务端linux安装教程,【重庆任我行】管家婆软件安装步骤,管家婆安装教程视频...
  6. DBA 常用的软件工具有哪些(分享篇)?
  7. 【手册】Linux User's Manual
  8. [转]信息安全相关理论题(四)
  9. 宏基E5572g 键盘排线插拔 拆机局部
  10. 如何拼局域网所有ip_如何ping局域网内所有IP