质量分析师的工作绝非易事。开发人员通常不喜欢他们,没有人喜欢代码中错误被拿出来公开。但是 QA 的工作在软件开发生命周期中非常有趣且非常重要。尤其是在当前的数字化转型时代,随着智能手机用户数量的日益增加以及组织越来越倾向于创建移动应用程序,QA 扮演着非常重要的角色。下面分享如何确保移动应用程序高质量部署所需的手动测试策略。
选择设备类型
开始测试阶段之前的一项重要工作是确定要在其上执行测试的设备数量。对于 iOS 设备,设备数量是有限的。但 Android 系统生态中,可以运行Android系统的设备数不胜数。
- 使用分析工具研究市场,找出最终用户最常使用的设备。
- 如果项目的预算估算足够,请为移动测试团队多准备几台 Android 和 iOS 设备。
- 在真实的移动设备中进行功能测试。
设备或模拟器
在进行市场分析并确定应该在哪些设备上进行测试之后,必须做出下一个重大决定。是否在模拟器或真实设备上进行测试。下面是两者的优点和缺点。
真实设备优点:
- 可靠的,稳定的
- 可以在最终用户将使用的相同设备和相同操作系统上执行测试
- 还可以检查其他实际场景中的应用程序性能
不过也有缺点,比如
- 购买和维护成本
- 国家/地区使用的限制
另一方面,模拟器的优点:
- 很容易获得,其中大多数是开源和免费的
- 在开发阶段,它们可以与IDE连接
- 软件和硬件功能都可以复制
也有一些缺点:
- 无法模拟设备部分实时场景
- 比实际设备慢
- 不支持所有操作系统版本
云测试
对于特殊的测试要求,内部解决方案是最好的。然而,在最近的数字化转型时代,云为我们提供了多种测试选择。
- 通过在云平台上进行测试,可以节省获取不同设备和维护成本的问题
- 可以从多个位置访问设备池
- 最大的优势是连续性,每次开发人员修改和添加代码时,都可以重新部署并执行测试用例场景
- 通过增加测试覆盖率来确保应用程序的质量
- 通过在多个设备上同时运行相同的场景来支持并行测试用例执行
网络测试
在将应用程序实时发布到生产环境之前,测试应用程序在网络覆盖较差的地方的性能非常重要。然而,在不同网络连接下的真实设备上测试应用程序既困难又耗时,因为连接可能会因地点和网络运营商而异。云测试通过提供模拟不同连接范围的选项在这里提供了另一种解决方案。
用户体验和浏览器兼容性
UX 测试最好在实际设备上进行。测试人员应手动检查。
- 应用程序组件(如按钮、下拉菜单等)在触摸时的响应
- 用户交互特定行为,如动画、页面更改及其响应时间
- 视口在不同设备中的响应行为,每个设备具有不同的分辨率
- 如果应用程序是基于 Web 的,则应在 Android 或 iOS 设备中具有主要使用份额的浏览器中测试其关键功能的行为和性能
性能和安全测试
移动设备的存储空间有限。当移动设备的存储空间几乎已满时,应用程序往往会变得缓慢或无响应。需要手动测试应用程序以检查其在存储空间很小的设备上的性能。
如果应用程序正在处理敏感数据,例如银行或在线交易相关信息,则需要开箱即用的安全测试方法。特别是,应确保应用程序不会在设备中存储信息。一个简单的测试方法是:
- 打开应用程序并登录
- 在浏览器中关闭或单击返回
- 再次打开它并检查用户是否仍然登录
手动移动应用程序测试并不吸引人。但是,这是一项非常具有挑战性的工作,有时需要测试人员思考一个以前没有实施过的想法。移动用户通常是无情的,如果他们看到应用程序的性能不如预期,他们会毫不犹豫地卸载它。因此,拥有强大的手动测试策略是应用程序成功的关键。