编辑
2023-05-03
测试理论与分析
00
请注意,本文编写于 724 天前,最后修改于 724 天前,其中某些信息可能已经过时。

目录

1. 分析设备和平台
2. 考虑网络环境
3. 考虑多任务和中断事件
4. 检查是否有手势冲突
5. 关注用户体验
6. 注意权限和通知以及消息展示
7. 注意消息的及时显示和同步
8. 注意APP依赖
9. 开展分层测试和探索性测试
10. APP安全测试
11. 使用log分析和定位问题

1. 分析设备和平台

测试设计之初,首先考虑的是测试环境,也就是确定APP究竟需要运行在什么样的设备和平台上。

  • 对于未上线的新APP项目,鉴于并没有已经实际使用APP的用户,所以测试人员要“预测”真实的用户所使用的设备和平台。
  • 在有新的操作系统版本将要发布的时候,需要参考以前操作系统版本升级时用户更新的进度。测试用例设计的原则是:让不同分辨率、不同屏幕尺寸大小的设备尽可能多地涵盖各个操作系统版本,另外,对于市场占有率很高的重点操作系统版本,可以使用多个设备来测试。

2. 考虑网络环境

APP最大的特点就在于移动性。用户在任何时间任何地点都可以打开APP使用,这意味着APP对于不同网络,以及网络变化的情况都能进行处理。因此,在测试时,要考虑弱网、无网、飞行模式、各种网络切换下的测试场景。

3. 考虑多任务和中断事件

测试人员在设计和测试APP的时候考虑到APP被别的程序或者用户切换到后台时,需要进行什么操作。比如:

  • 突然接到来电、短信
  • 不同APP之间的切换
  • 对于在具备同样功能的APP,尤其是具有视频和音频播放功能的APP之间进行切换时,需要注意它们之间的播放控制是否会对另外的APP产生影响。
  • 插拔耳机、Home按键切换APP、锁屏和解锁对APP的影响

4. 检查是否有手势冲突

APP中若使用了手势功能,如果与系统自带的手势有冲突的时候,要关注一下。

5. 关注用户体验

测试人员不仅需要关注APP的功能性需求,对于非功能性尤其是用户体验的需求,更需要关注。这就要求大家在测试时思维更加开放一些,不只局限在功能性的需求上。比如:横竖屏测试、“放大字体”、“反色”、“放大”和“文字转语音”/“VoiceOver”这些功能。

6. 注意权限和通知以及消息展示

测试APP安装时是否明确申明在用户使用APP时需要用到的权限。需要注意到这些权限是否已经明确申明,不然APP在提交到操作系统官方应用商店时会被拒绝,或者在用户安装APP的时候被拒绝。除了权限,还需考虑APP信息和状态的变化、状态栏、锁屏界面的消息提醒

7. 注意消息的及时显示和同步

测试过程中不能只是简单地验证消息在各种情况下是否能正常的显示,还需要考虑到APP中各种缓存对于消息显示的影响。APP的过程中一般都会采取“内存”→“文件”→“网络”(CDN)的结构来设计APP的缓存机制。一般在以下的环境中,我们才会在APP中使用缓存机制。

  • APP需要提供网络服务。
  • APP中有至少一部分数据不需要实时更新,哪怕是很短时间(3~5分钟)的缓存也是有好处的。
  • APP可以针对某种数据设定固定的过期时间,而不会导致其功能和用户体验出现问题。
  • 对用户来说可以减少流量的消耗。
  • 减少由于网速过慢而导致用户长时间等待的状况,APP的响应速度变快了。
  • APP因从网络加载数据而出错的情况会大大减少,提高了APP的稳定性。
  • APP在一定程度上可以算是支持了离线浏览。
  • 对APP开发和维护团队来说,则可以减轻APP请求对服务器进行大量访问的压力。

8. 注意APP依赖

很多APP开发时都已经先有了Web的版本,而APP只是把Web的内容展示在移动设备上,这就会让APP的很多功能依赖于Web事先实现的方式

9. 开展分层测试和探索性测试

  • 测试越早介入,发现bug修复的成本越低。
  • 探索性测试可以理解为通过测试人员的创造性思维,采取不同的测试路径,来达到测试目标的测试方法。发散性的思维很重要,不能用常规的思路去设计用例。

10. APP安全测试

测试APP请求中是否包含了明文的用户信息,测试APP的请求是否加密,测试SQLite数据库的存储是否安全,利用一些其他工具对APP进行安全测试

11. 使用log分析和定位问题

APP上的一些报错和重要操作要记录日志,方便定位问题。可以像微信那样,在问题反馈那里加一个日志上报的入口。

如果对你有用的话,可以打赏哦
打赏
ali pay
wechat pay

本文作者:月下追韩信

本文链接:

版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!