写点什么

优酷暗黑模式(十一):质量保证简析

  • 2020-02-29
  • 本文字数:2220 字

    阅读完需:约 7 分钟

优酷暗黑模式(十一):质量保证简析

一、测试背景

随着 iOS 13 系统添加了对暗黑模式的支持,暗黑模式所带来的质感以及填充感是大家所公认的。优酷 App 也准备加入对 iOS 13 和 Android 10 系统的暗黑模式支持,优酷测试部门的暗黑模式适配工作提上了日程。全站暗黑视觉升级对测试来说也是全新的挑战,因为暗黑模式的适配涉及大到一个页面、组件,小到一个按钮、一个组件元素;涉及到交互弹窗、Toast,同时也有全局换肤以及氛围配置的兼容工作。


那么优酷测试部门是怎么去覆盖全站的暗黑模式的测试工作的呢?这篇文章希望通过对暗黑模式测试的简单总结,来为未来的全站颜色切换等测试流程提供方法沉淀,同时也希望给其他 BU 开展暗黑模式适配的测试提供参考。


二、测试方案

起初,对于优酷 App 暗黑模式的测试,我们邀请开发同学进行了实现方案讲解,分析影响面之后,我们总结出有效 review case 7 类。起初,测试团队认为这些 case 足以覆盖所有的情况,剩下的 UI 细节交给设计同学走查验收。



可是,在之后的实际测试中,我们发现除一级页面之外,其他二级页面,小的组件都存在没有切暗黑状态的情况。要么被开发同学遗漏,或者被设计走查遗漏。并且还发现 App 启动崩溃、App 启动耗时变长、iOS 13 以下系统的兼容性等问题。经过复盘之后,测试团队觉得暗黑模式的测试可能没有这么简单,光凭这 7 类 case 是不够全面的,大家之前的评估存在偏差。


所以我们需要考虑暗黑模式适配到底需要测什么?通过测试中遇到的问题,我们不难看出暗黑模式测试需要包括功能、性能、稳定性、兼容性、用户体验,相关的测试一个都不能少。需要方方面面覆盖,不然 App 整体的质量及用户体验堪忧。


1、暗黑怎么测?

通过上面的介绍,我们知道了测什么。那么,应该怎么测呢?各个阶段我们需要关注哪些内容?下面详细介绍怎么测,以及对应测试阶段需要关注的测试点避免踩坑。

1) 功能测试

全站暗黑模式测试是有很多页面的,我们需要覆盖这些大大小小、深深浅浅的页面呢。这里,我们就要整体确定测试维度,避免忙乱无序,事倍功半。前期就需要我们制定有序的测试维度:


2) Android 10、iOS 13 及以上系统设备

基本测试 case 包括下面几个方面:


  • 深色/浅色切换显示颜色模式正确

  • 暗黑模式下切换皮肤、氛围,优先级暗黑<皮肤<氛围

  • 冷启动、切后台暗黑模式读取状态正确


有一些特殊组件是需要专门适配的。例如: 服务端下发标题 image 在暗黑模式下展示效果不正确,所以针对此类特殊组件需要降级处理。


2、稳定性测试

最开始,我们并未为暗黑模式添加全局的 "enable/disable"开关。然而,优酷 iOSApp 提测之后,我们发现 App 偶现启动崩溃。经过定位,发现此类崩溃是读取暗黑模式需要的颜色时机过早,iOS 暗黑 SDK 还未初始化完毕导致的。


针对此类问题我们设计了兜底策略,保证一定能读取到相应的值。同时,添加全局"enable/disable"开关,App 默认开启暗黑模式,如果遇到质量问题可以随时下线。


3、兼容性测试

1) Android 10、iOS13 以下系统设备

下面是我们需要测试的点


  • Android 10,iOS13 以下的手机要能正常安装支持暗黑模式的包且正常工作

  • Android 10,iOS13 以下的系统不能错误地读取到暗黑模式的色值和资源

2)Android 9 系统厂家自行实现“暗黑模式”的情况

  • 需要检查此类设备切到非官方“暗黑模式”后,功能有没有严重异常。由于这类暗黑模式的实现非官方,针对此设备上出现的轻微 UI 问题,一般不做修复。

  • 此类机型上我们出现过播放场景横竖屏切换崩溃的问题 。

4、用户体验

我们在保证技术实现的基础上,必须要保证用户体验达标。本着对用户负责的态度,暗黑模式的验收第一标准就是用户体验。针对用户体验问题也是最高优先级修复:我们在保证技术实现的基础上,必须要保证用户体验达标。本着对用户负责的态度,暗黑模式的验收第一标准就是用户体验。


针对用户体验问题也是需要最高优先级修复。所以暗黑模式准备上线的时候,优酷 App 是准备默认不打开暗黑模式,通过下发配置来打开开关,二次启动 App 暗黑模式才会生效。测试团队认为这个方案导致视觉观感不佳,对这个方案进行了质疑。虽然看似确保了稳定性,但是严重影响用户体验。所以最终研发团队修改了方案,在最大程度保证稳定性的前提下,将优酷 App 的暗黑模式设置为默认打开。

三、展望

暗黑模式的上线,给测试团队的测试工作带来了极大的挑战,我们也在思考如何减轻测试团队的压力。


1、暗黑模式的页面和组件改造可能是有遗漏的。是否可以把已经实现暗黑模式的组件加上埋点,上线后通过捞取数据来查缺补漏。


2、针对暗黑模式的回归测试方案,怎么能最大化的减少测试回归量。目前方案:iOS 13 暗黑模式下跑全量功能 case,每个业务场景试一下浅色模式和暗黑模式的切换;Android 10 暗黑模式下跑全量功能 case,每个业务场景试一下浅色模式和暗黑模式的切换。


3、之后新开发的组件,如何减小测试回归范围。


对于这些问题,如果各位同学有好的建议和想法,欢迎在评论中和我们交流。


作者简介


琴奇,阿里文娱测试开发工程师。


相关阅读


优酷暗黑模式(一):是什么、为什么、如何落地?


优酷暗黑模式(二):如何建立设计语言标准化管理体系


优酷暗黑模式(三):暗黑模式设计指南


优酷暗黑模式(四):设计标准化的技术实现


优酷暗黑模式(五):暗黑模式的技术实现策略


优酷暗黑模式(六):暗黑模式的技术支撑 iOS


优酷暗黑模式(七):暗黑模式的技术支撑 Weex & H5


优酷暗黑模式(八):分发场景落地(Android & iOS)


优酷暗黑模式(九):消费场景落地(Android)


优酷暗黑模式(十):消费场景落地(iOS)


2020-02-29 10:002318

评论 1 条评论

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

OpenHarmony设备开发从零到一

鸿蒙之旅

OpenHarmony 三周年连更

云原生应用使用的云服务组件介绍

穿过生命散发芬芳

三周年连更 云服务组件

Django笔记二十二之多数据库操作

Hunter熊

Python django database

Office Mac升级提醒如何去掉?关闭Microsoft AutoUpdate弹框提示

Rose

许可证 Office 2019中文版 Office Mac office更新 office2021下载

玛雅Maya 2024 发布 maya2024破解

理理

maya2024下载 maya2024新功能 maya2024安装教程

团队管理的五个关键词

Jadedev

团队管理

在这样的公司工作没意义

Jadedev

职场 职场经验 职场发展

在啥样的公司工作没意义

Jadedev

职场 职场经验 职场发展

2023-05-06:X轴上有一些机器人和工厂。给你一个整数数组robot,其中robot[i]是第i个机器人的位置 再给你一个二维整数数组factory,其中 factory[j] = [posit

福大大架构师每日一题

golang rust 福大大

软件测试 | MTV开发模式

测吧(北京)科技有限公司

测试

云原生文件存储 CFS 线性扩展到千亿级文件数,百度沧海·存储论文被 EuroSys 2023 录用

Baidu AICLOUD

文件存储 元数据 posix

Pratt Parsing - 自顶向下的算符优先级

乌龟哥哥

三周年连更

waves插件更新,Waves V14系统及支持的主机一览

理理

waves下载 waves14

macOS硬盘如何格式转换?用Tuxera NTFS就够了!

Rose

ntfs FAT32

Macos媒体播放器 Movist Pro 针对 macOS 13 Ventura 进行了优化

Rose

Movist Pro 中文版 Movist Pro下载 Macos媒体播放器 视频播放器下载

SVN管理工具Cornerstone意外退出怎么办?

理理

SVN管理工具 cornerstone 4破解 Cornerstone mac版 Cornerstone意外退出

必知必会的JavaScript前端面试题篇(一),不看后悔!

Immerse

清晰的定位对团队成功的影响

Jadedev

团队管理

责任心与执行力

Jadedev

职业素养 团队文化 人格

架构训练营模块一作业

Geek_3d7c4d

架构训练营

Focus Matrix for Mac(智能任务管理器)

Rose

mac软件下载 Focus Matrix 任务管理器

苹果Mac最佳卸载程序和清理助手:App Cleaner & Uninstaller

Rose

mac系统清理优化软件 苹果系统清理 App Cleaner

Go常用设计模式(中)

闫同学

三周年连更

Mac 触控增强神器:BetterTouchTool如何使用?

Rose

苹果软件下载 BetterTouchTool破解 BetterTouchTool教程 Mac 触控增强神器

什么是人工智能领域模型的 Presence Penalty 参数?

汪子熙

人工智能 机器学习 深度学习 强化学习 三周年连更

macbook触摸板怎么按右键

理理

MacBook 触控板

Java IO流详解

timerring

Java

容量成本性能全都要有, Redis 容量版 PegaDB 设计与实践

Baidu AICLOUD

一套前后台全部开源的H5商城送给大家

越长大越悲伤

开源 java‘

Smart Disk Image Utilities for Mac(智能磁盘镜像工具)

理理

Smart Disk Mac磁盘管理

Java实现坦克大战2.0

timerring

Java

优酷暗黑模式(十一):质量保证简析_移动_阿里巴巴文娱技术_InfoQ精选文章