1. 安装和启动

(1) OTA安装测试

·         app必须能够通过ota安装到测试设备上

·         如果app安装完后没有icon,那么必须能够通过其他的方法来启动这个app

·         app安装好以后不能要求重启设备

·         如果存储空间不够,安装时必须提示信息

(2)启动时间:

·         如果app启动需要很长时间,app必须给出合理的提示

·         如果启动时间超过5秒,必须有进度条来告诉用户启动的进度。

(3)卸载app:

·         app必须能够被从设备中卸载

·         所有的app文件和数据都必须被完全从设备上清除

·         云端的文件可以保留

·         额外购买的数据或者内容,需要保留在设备中

2. 功能性

主要功能的健全性检查:app的功能要与需求一致

app的隐藏功能:app没有包含任何隐藏功能,所有的功能与帮助文档一致,并不会损害设备的数据。

3. 内存使用

(1)app运行中的内存使用:

·         在app执行过程中,如果出现内存用完的异常,app需要能够正确处理。

·         当内存趋于耗尽的时候,需要一个警告提示,告知用户内存即将耗尽。

(2)多次启动:

·         能够正确suspend以及重新启动app(这里的suspend是指将app的运行放到后台)

·         当app被suspend后,能够正确的重启它(可以是从被suspend的状态,也可以是从初始状态,这个依赖于app的设计)

(3)Idle:

·         app能够从自动锁屏中正确恢复

·         app运行中,如果自动锁屏,解锁后app能够恢复到锁屏之前的状态。

(4)取消耗时的操作:

·         app必须能够允许用户取消耗时的操作:

·         如果操作消耗的时间操作10秒,必须有能够取消这个操作的功能。

4. 网络连接

(1)发送和接收数据:

app必须能够通过http来接收和发送数据

在不同的网络环境下(2G/3G/4G/Wifi),用户在每个需要发送或接收数据的地方都能够正确的运行。

(2)网络延迟和连接丢失:

app必须能够正确处理网络延迟和连接丢失

在网络有延迟或者连接丢失的情况下,app必须给出相应的错误提示,告知用户信息。

(3)飞行模式:

当设备处于飞行模式时,app必须能够正确运行

如果app需要使用网络连接,在设备处于飞行模式的时候,需要给出有意义的提示,告诉用户app目前因为设备处理飞行模式而无法正常运行。

当网络恢复后,app必须能够恢复到原来的状态,并继续正常工作。

(4)资源下载:

当app在下载资源的时候,它必须能够处理暂停下载/继续下载和下载中断的事件

如果有暂停下载功能,这个功能必须运行正常

当网络连接断开时,下载能够正确停止

当网络恢复时,下载必须能够正确继续或者重新开始。

5.事件处理

(1)超时事件的处理

如果app内部有时间事件的功能,当这个超时事件发生时,必须能够被正确处理。

(2)App处于suspend状态时,能够正确树立超时事件

当app被放到后台后,超时时间发生时,app能够正确处理这些事件,并且正确恢复状态,继续运行

(3)当app已经退出时,超时事件能够被正确处理

app已经退出,但是app的超时事件发生时,应该提供一个start选项,或者app被启动。

启动后app能够正确运行。

(4)夏令时效果的检查。

如果一个app使用了与时间相关的数据,那么需要检查当时间切换到夏令时时,所有的功能都能正确运行。

(5)时区的处理

如果一个app使用了与时间相关的功能或数据,当设备的时区切换时,需要检查多有的相关功能都工作正常。

6. 消息和电话

发送:app能够成功发送信息

接收:app能够成功接收信息

呼入:当用户在app运行时接了一个电话的时候,当这个电话结束时,app能够正确的从原来的状态继续运行。

7.外部影响

中断操作:当有中断事件发生时(USB插入/拔出,充电器/蓝牙连接/邮件/闹钟/电量提醒/耳机/NFC等设备的连接和断开的时候),app能够从原状态继续正确运行。

8.用户界面

可读性:app的所有内容都是清晰可读的

阅读时间:app给出的信息如果是时间性的,那么用户就需要有一个舒服的时间来完成对这些信息的阅读

屏幕的重写:当app的不同界面切换的时候,不能出现闪烁,或者界面的混乱。

一致性:app的界面应该保持一致性,包括动作序列,工作结果,用于,界面布局,声音等。

按键/输入的易用性:按键的布局/硬键盘输入/软键盘输入/触摸屏输入都必须易用,同时满足左右手的习惯。

UI的速度:在app设计的使用场景下,app的速度不能太快,也不能太慢,以提供良好的使用体验。

错误信息:当需要出现错误信息的时候,信息必须清晰的解释问题,以及提供需要采取的动作

功能进度:当功能的运行需要超过5秒的时候,需要给用户提供进度条或者类似提示

动作的展现:当app在展现或者思考的时候,app不能执行不合理的动作

多种显示模式:如果app支持多种显示模式(横屏/竖屏/外接设备),所有的用户界面和控件都能正确展示。如果设备有横屏的外接输入设备,那么app需要能够哦支持横屏的展现。

不同屏幕尺寸:app需要能够支持不同屏幕尺寸的展示

多种输入方法的支持:app需要能够支持不同的输入方法

加速度计/移动感应器的响应:加速度计/移动感应器的response不能影响UI的展示和app的使用。

拼写错误:app不能出现拼写错误

文本的技术错误:所有的文本展示不能出现文本扭曲/断裂/重叠/切断等错误

9.语言

正确操作:如果设备支持不同的语言,当设备设置不同的语言时,app都要能够正确工作。

手动选择:如果app允许手动选择语言,app要能够选择所有的语言并继续正确工作。

支持的格式:app要能够支持不同的日期/时间/数字/货币等格式

国际字符:app能够正确接受并显示所有的国际字符

10. 恢复

从主菜单suspend和恢复:app能够正确suspend,并且从suspend状态恢复

运行中的suspend:app运行时,能够正确被suspend,占用的设备和资源能够被正确释放,恢复后能正确运行。

后台运行:当app被切换到后台运行时,不能影响其他app或者系统功能,不能播放任何声音,所有系统的功能都能正常运行。

资源的共享:app能够和其他app正确共享资源:比如联系人(新增/删除/修改等)

退出时恢复系统设置:app不能永久的修改系统设置,退出时应该要恢复,比如音量,语言,屏幕的方向等。

11. 多媒体

Mute功能:如果app需要操作声音或者话筒,那需要有相应的音量控制和话筒控制的功能。

设置的可理解性:app的所有设置状态都要易于理解。

设置不能影响功能:所有的app的设置不能影响功能的运行

app自己的设置能够被正确保存:退出时能正确保存,或者提示保存信息。

声音和振动不被滥用:声音和振动的使用都要提供良好的用户体验。

12. 菜单

帮助和about文档:

app需要包含帮助文档,说明如何使用该app

app需要包含about文档,用户可以看到具体的版本号

有效的动作:

    选择app的每个item都应该调用相应的有效的动作

13. 按键

菜单的滚动:使用键盘或者其他导航设备的时候,菜单要能够顺利滚动

文本输入框的滚动:在help/about等文本域中,使用外设或者其他导航设备时能够正确滚动。

暂停:如果app有需要与用户进行交互的功能,那么app需要有一个暂停功能,也要有一个继续功能,比如游戏。

并发按键输入或并发触摸的支持:app需要能够支持并发的按键输入或者并发的触摸输入,如果需要提示错误信息,则信息必须清晰可理解。

设备按键:app不能改变设备的默认按键行为,比如音量控制,锁屏等

14. 稳定性

app的稳定性:app在使用过程中不能crash或者freeze

强制关闭的稳定性:当被强制关闭的时候,app必须能够保存足够的状态信息,并能正确启动并继续运行(强制关闭包括断电/手动关闭等)

15. 数据处理

保存游戏状态:app能够将游戏的状态/得分等信息保存进存储器中。

数据删除:app必须指出数据是否将被删除或者提供一个易用的数据恢复手段。

内存记录:app能够正确更新存储器中保存的数据和状态信息。

16. 安全性

当用网络连接来发送或接收敏感数据的时候,这些数据需要被加密。

密码:密码和敏感数据不会被存储到设备中,也不会在app中反馈出来,敏感数据必须被密码保护。当需要提示用户信息的时候,最多只能有25%的数据被显示出来。

17. 隐私

如果app需要访问个人信息,那么必须提供隐私条例,没有用户的允许,app不能访问隐私信息。没有访问到用户信息时,app也必须能正常工作

地点信息:如果app需要使用用户的地点信息,必须得到用户的许可

推送提示信息:app在推送信息前,必须得到用户的许可

18. 广告

app必须符合内嵌广告规则:内嵌广告不得影响用户的使用

19. 性能

网络性能:音频相关的功能必须能够识别不同的网络环境,限制访问时间和数据量(最多5分钟,最多5M),视频相关的功能也必须能够识别不同的网络环境,限制访问时间和数据量(最多十分钟)

电池性能:app不能快速的耗电。

app 测试基础的更多相关文章

  1. app测试基础知识之命令

    app测试点:功能测试,安全测试,用户体验测试,交叉事件测试,兼容性测试,性能测试,安装/升级/卸载 ,UI测试 命令操作: adb connect 名 adb devices adb  instal ...

  2. APP测试入门篇之APP基础知识(001)

    前言        最近两月比较多的事情混杂在一起,静不下心来写点东西,月初想发表一遍接口测试的总结,或者APP测试相关的内容,一晃就月底了,总结提炼一时半会也整不完.放几个早年总结内部培训PPT出来 ...

  3. 安卓APP测试验证点总结

    最近较懒,加之闺女出生后记忆没完全恢复,总是忘东忘西,关于安卓APP测试的验证点还是总结一下,方便设计测试用例时查阅,也给各位博友参考! 1.除APP的正常功能点外,还有以下验证点: 安装/卸载(考虑 ...

  4. 推荐书籍 -《移动App测试的22条军规》

    在今天的博文中,博主希望给大家分享一本博主同事黄勇的最新利作:<移动App测试的22条军规>.黄勇是ThoughtWorks资深敏捷QA和咨询师.对于我来说,和黄勇在一起的工作的这个项目, ...

  5. 几个移动App测试工具

    介绍几款移动App测试的工具: 腾讯测试:http://bugly.qq.com/优测:http://utest.qq.com/fir.im测试:http://bughd.com/ 大致介绍如下: b ...

  6. 手游与App测试如何快速转型? —— 过来人科普手游与App测试四大区别

    随着智能设备的普及和移动互联网的兴起,各家互联网巨头纷纷在往移动端布局和转型,同时初创的移动互联网公司也都盯着这个市场希望分一杯羹.在这个大环境下,互联网的重心已经慢慢从Web端转向了移动端,而移动端 ...

  7. Web测试与APP测试有哪些异同?

    1.相同点 不管是传统行业的web测试,还是新兴的手机APP测试,都离不开测试的基础知识,即是不管怎么变,测试的原理依然会融入在这两者当中. 1)设计测试用例时,依然都是依据边界值分析法.等价类划分等 ...

  8. 包建强的培训课程(4):App测试深入学习和研究

    @import url(http://i.cnblogs.com/Load.ashx?type=style&file=SyntaxHighlighter.css);@import url(/c ...

  9. [原创] 上海招聘高级测试工程师(性能测试/自动化测试/App测试),长期有效

    [原创] 上海招聘高级测试工程师(性能测试/自动化测试/App测试方向),长期有效 高级测试工程师(性能/自动化方向) 1.负责性能测试计划,性能需求分析,性能测试方案和用例设计,搭建性能测试环境,执 ...

随机推荐

  1. PHP与类有关的几个魔术方法

    与类有关的其他魔术方法 序列化与反序列化技术 含义: 序列化: 就是将一个变量所代表的“内存”数据,转换为“字符串”形式并持久保存在硬盘上的一种做法. 反序列化: 就是将序列化之后保存在硬盘上的“字符 ...

  2. Docker 入门 到部署Web 程序- (阿里面试常用的docker命令和优点)

    最近阿里的面试官问我Docker是做什么用的,我记得之前360和美团,京东的都问过,但是一直没时间看,最近有时间了,系统的学习了一下Docker,在此做一下记录,方便各位看官学习交流 一.Docker ...

  3. LoadRunner脚本增强技巧之自动关联

    为什么要做关联,原理很简单,录制脚本的时候,服务器会给用户一个唯一的认证码来进行操作,当再次回放脚本的时候服务器又会给一个全新的认证码,而录制好的脚本是写死的,还是拿老的认证码提交,肯定会导致脚本执行 ...

  4. 公告:请访问我的个人博客新站点——www.huangshujia.me

    我的个人博客现在在(http://www.huangshujia.me/)cnblog这里不会做任何更新了.或者关注我的个人公众号:碱基矿工

  5. solr源码分析之searchComponent

    上文solr源码分析之数据导入DataImporter追溯中提到了solr的工作流程,其核心是各种handler. handler定义了各种search Component, @Override pu ...

  6. lucence学习系列之一 基本概念

    1. Lucence基本概念 Lucence是一个java编写的全文检索类库,使用它可以为一个应用或者站点增加检索功能. 它通过增加内容到一个全文索引来完成检索功能.然后允许你基于这个索引去查询,返回 ...

  7. BZOJ3560 DZY Loves Math V(欧拉函数)

    对每个质因子分开计算再乘起来.使用类似生成函数的做法就很容易统计了. #include<iostream> #include<cstdio> #include<cmath ...

  8. bzoj3007: 拯救小云公主(二分+并查集)

    挺水的题...好多题解说是对偶图,其实感觉不能算严格意义上的对偶图吧QAQ 先二分答案r,然后以boss为中心半径为r的圆不能走,求能否从左下走到右上. 不能从左下走到右上,说明这堆圆把图隔开了,于是 ...

  9. OpenCV(C++版)图像读取,创建,复制,保存,显示

    http://blog.163.com/yuyang_tech/blog/static/21605008320132642254689/ 一个小例子: #include "stdafx.h& ...

  10. Httpclient与RestTemplate的比较(比httpClient更优雅的Restful URL访问)

    一.HttpClient (一)HttpClient 客户端 1.HttpClient 是 apache 的开源,需要引入两个包:httpclient-4.2.4.jar 和 httpcore-4.2 ...