写点什么

面向 iPhone X 的 iOS 应用测试要领

  • 2017-11-26
  • 本文字数:1944 字

    阅读完需:约 6 分钟

最近,Apple 发布了充满未来色彩的全新一代 iPhone X 。抛开新颖的设计和饱受争议的价格不谈,这款设备为最终用户带来了一系列全新的功能、显示屏以及交互方式。

iOS 11 与之前版本相比有了巨大的变化,导致用户接受度依然很低(约 30%),并且质量方面也存在瑕疵:面世一个半月的时间里发布 4 个补丁,这已经不算少了

有证据显示,iOS 11 的大部分变化已经导致原本在 iOS 11.x 和 iPhone 8、iPhone 7 等上一代机型上可以正常运行的应用遇到问题。

本文将介绍其中的一些重要事项,测试人员和开发者如果尚未重视,必须立即着手采取必要的措施,以确保自己的应用可以在 Apple 最新的移动平台上顺利运行。

本文主要分为两部分:移动测试方面的建议,以及有关应用开发的建议。

针对 iPhone X/iOS 11 的移动测试

  • 首先请务必面向所有受支持的平台进行测试。并非每款设备都适合运行 iOS 11,应用可能继续停留在与 iOS 11 功能方面有较大差异的 iOS 10 平台上。请在 iOS9.3.5、iOS 10.3.3 以及最新的 iOS 11.x 上测试你的应用。
  • iPhone X 出厂预装了 iOS 11.0.1,需要更新到 iOS 11.1 – 这意味着 iPhone X 绝对不会运行这两个版本之间的 iOS 11.0.2 / iOS 11.0.3 – 如果客户尚未更新到 iOS 11.1,那么你可能需要保留一个继续运行 iOS 11.0.3 的设备,例如 iPhone 8/7,借此确保能全面覆盖iOS 11.Latest-1
  • iPhone X 的显示屏和屏幕尺寸有极大变化,5.8 英寸的屏幕与其他所有 iPhone 都不同。因此一定要针对这款新设备测试 UI 元素、响应式应用布局以及其他图形元素(下图来自我在体验该设备时发现CVS原生应用在 UI 方面遇到的一个问题)。该设备的“全面屏”比较类似三星 S8/Note 8 设备。对开发者来说,在表格、文字字段以及其他 UI 元素方面可能需要围绕 iOS 11/iPhone X 进行很多适配工作。

  • 新的手势和操作流程会对可用性和自动化测试脚本产生影响。与老款 iPhone 不同,用户在使用 iPhone X 时没有 Home 键可用,因此如果要打开任务管理器(见下图)并切换或终止后台运行的应用,用户必须使用不同的操作流程。这种情况造成的影响在于,首先,应用测试团队需要确保测试过程涵盖新的操作流程,并且更重要的是,如果这些过程已成为测试自动化场景的组成部分,相关代码也需要调整以适应新的流程。

除了取消Home 键导致操作后台应用的方法产生变化外,用户返回主屏的方法也有所不同。在每个测试自动化场景中,返回主屏都是很常见的步骤,因此这些步骤也需要进行必要的调整,使用一个向上滑动的手势代替按压 Home 键

  • 身份验证和支付场景也有所变化,因为Touch ID已经被Face ID取代。虽然 iPhone X 通过面部识别技术提供了创新的数字化操作方式,但目前登录应用或进行支付等操作过程中的事实标准依然是基于指纹的身份验证。同时测试这两种方法是一项必不可少的需求。我本人简单浏览了市面上各种流行的应用(见下例)发现,很多应用面对 iPhone X 全无准备。大部分应用或在界面上显示了让用户通过 Touch ID 登录的选项,或者也许已经支持 Face ID 并且允许用户使用,但依然在界面和应用设置中显示了不再支持的选项。

  • 测试移动网页和响应式 Web 应用,请同时针对横屏和竖屏模式测试,并且一定要实际在 iPhone X 的屏幕上进行测试。我遇到的问题主要与文字换行有关,另外还有很多文字大部分在于错误地使用整个屏幕的面积来显示 Web 内容。

此外在访问 Hulu.com 网站时也遇到了不少问题。大部分菜单内容被显示在屏幕最底部用户可控范围之外,因此完全无法操作。很明显,这个网站还没有针对 iPhone X/Safari 浏览器进行过适配。

移动应用开发

  • 从 UI 以及身份验证两方面优化现有 iOS 应用。如上文所述,Touch ID 的取消无疑会造成兼容性问题,对于 iPhone X 上运行的应用,需要在 UI 方面进行必要的更改。此外 UI 元素在全新屏幕上的缩放也需要对 RWD 应用或移动应用进行重构。为了帮助大家更快捷地适配,Apple 为应用开发者提供了 UI 指南

  • 充分利用 iOS 11 的高级功能,尤其是面向全新芯片(AI11 Bionic)以及摄像头传感器的功能,围绕扩增现实(ARKit API)等功能打造更有趣的数字化操作方式。零售类应用以及游戏无疑会是第一批充分利用这些创新功能提供更丰富最终用户体验的应用。

总结

新发布的 iPhone X 可能会与 Android Note 8 等设备一起开创一个全新的创新领域,让应用开发者借此更好地吸引客户,创造业务价值。但如果应用质量不能与这些创新的技术相匹配,例如出现上文提到的这些问题,技术转型过程肯定会充满挑战,难以被最终用户所接受。

强烈建议不同领域的 iOS 应用供应商亲自体验这个全新的平台,弥补质量和功能方面的缺失,进行必要的调整,以便紧跟技术创新步伐不“掉队”。

作者 Eran Kinsbruner 阅读英文原文 The Essentials of iOS App Testing For iPhone X

感谢覃云对本文的审校。

2017-11-26 16:451672
用户头像

发布了 283 篇内容, 共 106.5 次阅读, 收获喜欢 62 次。

关注

评论

发布
暂无评论
发现更多内容

Java线程中的wait、notify和notifyAll解析

共饮一杯无

Java 多线程 三周年连更

基于阿里云物联网平台设计的实时图传系统_采用MQTT协议传输图像

DS小龙哥

三周年连更

Java枚举和注解

timerring

Java 三周年连更

《社区人员管理》实战案例设计&个人案例分享

京东科技开发者

架构 测试 编码 在线设计平台 企业号 4 月 PK 榜

漫谈前端自动化测试演进之路及测试工具分析

京东科技开发者

前端 自动化测试 前端测试 企业号 4 月 PK 榜

Springboot如何手动连接库并获取指定表结构|超级详细,建议收藏

bug菌

springboot 三周年连更

Intents ,快速完成任务的最强辅助

鼎道智联

AI

跨平台图像浏览器:XnViewMP 中文激活版

真大的脸盆

Mac Mac 软件 图像查看 图像浏览

MobPush Android SDK厂商通道申请指南

MobTech袤博科技

Typescript-类型检测和变量的定义

格斗家不爱在外太空沉思

typescript 三周年连更

通过小程序容器技术让App实现灰度发布

没有用户名丶

再聊 MySQL 聚簇索引

江南一点雨

Java MySQL

SAP Emarsys 的前后台技术栈

汪子熙

SaaS Cloud SAP 思爱普 三周年连更

缓存与数据库双写一致性几种策略分析

京东科技开发者

数据库 缓存 高并发 数据一致性 企业号 4 月 PK 榜

全栈开发实战|Spring Boot文件上传与下载

TiAmo

Spring Boot 三周年连更 Apache Commons 文件上传下载

《设计模式之禅》Proxy_Pattern--代理模式

浅辄

设计模式 代理模式 三周年连更

一篇神文就把java多线程,锁,JMM,JUC和高并发设计模式讲明白了

做梦都在改BUG

Java 多线程 高并发

CentOS7 离线安装 Zabbix5.0

A-刘晨阳

Linux zabbix 三周年连更 离线安装

极光笔记 | 让运营“从心”出发,打造身临其境的客户体验!

极光JIGUANG

运营 消息推送 极光推送

软件架构生态化-多角色交付的探索实践

京东科技开发者

架构 架构师 交付能力 企业号 4 月 PK 榜

MySQL到ClickHouse数据同步产品对比推荐

NineData

MySQL Clickhouse dba bifrost NineData

跨平台应用开发进阶(五十)uni-app ios web-view嵌套H5项目白屏问题分析及解决

No Silver Bullet

uni-app ios 跨平台应用开发 三周年连更 web-view

MySQL8.0 优化器介绍(三)

GreatSQL

MySQL greatsql greatsql社区

DeepSpeed Chat: 一键式RLHF训练,让你的类ChatGPT千亿大模型提速省钱15倍

汀丶人工智能

人工智能 自然语言处理 深度学习 ChatGPT

Karmada v1.5发布:多调度组助力成本优化

华为云开发者联盟

云原生 后端 华为云 华为云开发者联盟 企业号 4 月 PK 榜

企业微信接入系列-自建应用

六月的雨在InfoQ

企业微信 应用配置 三周年连更 自建应用

leetcode-2335. 装满杯子需要的最短总时长

肥晨

三周年征文

Spring Boot整合多数据源实践

做梦都在改BUG

Java Spring Boot

如何在业务开发中使用适配器模式?

做梦都在改BUG

实习生疑问:为什么要在需要排序的字段上加索引呢?

架构精进之路

MySQL 数据库 索引 三周年连更

“分割一切”大模型SAM、超轻量PP-MobileSeg、工业质检工具、全景分割方案,PaddleSeg全新版本等你来体验!

飞桨PaddlePaddle

计算机视觉 飞桨 图像分割

面向iPhone X的iOS应用测试要领_软件工程_Eran Kinsbruner_InfoQ精选文章