App测试的策略
(一)、App测试的策略
1.App测试需要考虑的方面
设备多样性
操作系统、浏览器、应用程序运行时环境、屏幕分辨率、人机交互界面和接口、人体工程学设计、屏幕尺寸等
运营商网络基础设施
自动化脚本编程与开发
可用性测试
2.基于模拟器的测试
使用模拟器进行测试也许不是最佳测试方法,但通常却是最实用和最节约成本的,而且它还有一些其它优点。
第一,模拟器更加便利地进行功能测试,你可以通过单步调试发现没有满足需求设计的地方和细节。通过模拟器调试和分析bug,从而为在真机测试阶段减少不少的花费。
第二,模拟器容易管理,因为模拟器是基于PC的,所以每一个测试人员和开发人员都有这个“设备”。开发人员可以自己管理上面的软件,不需要系统管理员。
第三,不同的模拟器模拟不同的设备。为了模拟在某一种设备上测试,只需要加载该种设备对应的模拟器配置文件即可,最棒的是,你无须为访问运营商网络支付任何费用!
第四,PC上的模拟器具备更快的CPU以及更大的内存容量,这使得运行起来程序更快 ,也使得测试以较快完成。
3.真机测试与基于模拟器的测试方法对比
4.兼容性测试
操作系统版本
屏幕分辨率
不同厂家的ROM
网络类型
5.流量测试
用户的操作直接导致的流量消耗。
在用户没有直接使用情况下的流量消耗。
6.电量测试
测试耗电量。
7.弱网络测试
信号不好的地方(建筑物或隧道),以及基站间切换,或者在体育场等人员密集场所基站容量跟不上等。
8.安全测试
(1)安装包测试
能否反编译代码
能否从这个安装包中获取项目的源代码。
安装包是否签名
保证该App是合法开发者发布的,以防被第三方应用覆盖安装等问题。
(2)敏感信息测试
数据库是否存在敏感信息。
软键盘劫持。
如果用户安装了第三方软键盘,一些敏感信息可能被第三方软键盘截获,可能引起用户数据被盗取并造成用户损失。
如金融类App登录界面的用户名密码输入框等,看是否支持第三方输入法。对于非常敏感的输入,一般建议使用应用内的软键盘。
(3)账户安全
密码是否明文存储在后台数据库
密码传输是否加密
账户锁定策略
同时会话
比如使用不同客户端登录同一账户和密码。
注销机制
在客户端注销后,断网重连后,切换网络连接方式后,账户身份都应该失效。
9.环境相关测试
(1)干扰测试
使用手机上App的时候会遇到一些打断的情况,如收到电话、短信、通知栏消息、提示框弹出、第三方安全软件警告框弹出。
(2)权限测试
App访问电话本或者相册可能泄露隐私。
(3)边界情况
可用存储空间过少。
没有SD卡/双SD卡。
飞行模式。
系统时间有误(晚于和早于标准时间)。
第三方依赖。如果App对其他App有依赖关系(例如QQ,微信联合登录等),那么我们还需要测试第三方App没有安装的情况,以及版本过低的情况。
App测试的策略的更多相关文章
- 如何做好APP测试?
测试一个App具体包括哪些方面,以及每个方面有什么关键点呢? 测试人员常被看作bug寻找者,但你曾想过他们实际是如何开展测试的吗? 你是否好奇他们究竟都做些什么,以及他们如何在一个典型的技术项目中体现 ...
- [转]移动App测试中的最佳做法
Daniel Knott 用过各种不同编程语言和软件质量保证工具.他在软件开发和测试方面干了七年,自2010年起,他一直在德国汉堡的XING AG公司就职,几个项目里,比如XING调查和XING建议, ...
- 《大话移动 APP 测试》
<大话移动 APP 测试> wiki: Software testing 第5章 常用工具介绍和实践 Android.iOS Monkey Android SDK 提供的一个工具:发送伪随 ...
- APP测试(转载)
(1) 非功能测试 app测试的一个重要方面是app的非功能需求.移动app在推出市场或进行进一步开发前,测试人员有一定的职责做该类需求的跟踪工作. 早期开发阶段要进行的第一个测试应该是实用性测试.通 ...
- 移动App测试中的最佳做法
一说起软件测试,测试员想到肯定是去检查文件,功能,API,性能并确定软件是否安全,以及关于软件特定部分的其他事项.但是对于移动测试,测试员不得不基于用户移动使用模式考虑移动相关的功能. 本文是基于我的 ...
- 【转】移动App测试中的最佳做法
一说起软件测试,测试员想到肯定是去检查文件,功能,API,性能并确定软件是否安全,以及关于软件特定部分的其他事项.但是对于移动测试,测试员不得不基于用户移动使用模式考虑移动相关的功能. 本文是基于我的 ...
- 手机APP测试
注:以下内容来自网络: 一.手机APP测试类型 1.1 接口协议测试 在APP客户端开发设计时,一般服务端会提供相应的接口协议文档,接口协议文档的质量,决定了APP的开发进度.此部分的测试,应首先检测 ...
- APP测试入门篇之APP基础知识(001)
前言 最近两月比较多的事情混杂在一起,静不下心来写点东西,月初想发表一遍接口测试的总结,或者APP测试相关的内容,一晃就月底了,总结提炼一时半会也整不完.放几个早年总结内部培训PPT出来 ...
- App测试
(1)App独特测试点: 客户端兼容性测试:系统版本.不同深度定制的rom.屏幕分辨率.中断测试.安装.卸载.升级.对其他程序的干扰等 需要的一些工具: appnium / lr / jmeter ...
随机推荐
- nginx常用场景
1.浏览器缓存 server { listen 8083; server_name 127.0.0.1; sendfile on; access_log /var/log/nginx/static_s ...
- eclipse 开发web 项目,使用gradle 需要安装的插件
1.Buildship Gradle 扩展 eclipse IDE 以支持使用 Gradle 构建软件.此解决方案由 Eclipse 基金会提供 2.EGradle Editor (主要用来编写gra ...
- Redis基础一(Linux)
Redis概述 1.是一个开源的,先进的<key,value>存储,并用与构建高性能,可扩展的应用程序的完美解决方案 2.从它的许多竞争继承来的三个主要特点: l Redis数据库完全在 ...
- 海思uboot启动流程详细分析(二)
1. 第二个start.S 从start_armboot开始,在startup.c中有包含#include <config.h> 在config.h中: /* Automatically ...
- Installing the Ranger Kafka Plug-in
This section describes how to install and enable the Ranger Kafka plug-in. The Ranger Kafka plug-in ...
- Linux新手随手笔记1.4
计划任务服务程序 计划任务 at 命令 一次性的 crond 服务 周期性的 23:29执行reboot命令(重启服务器) at -l 查看当前的计划任务 at ...
- Jenkins + Ansible + Gitlab之gitlab篇
前言 持续交付 版本控制器:Gitlab.GitHub 持续集成工具:jenkins 部署工具:ansible 课程安排 Gitlab搭建与流程使用 Ansible环境配置与Playbook编写规范 ...
- numpy科学计算库的基础用法,完美抽象多维数组(原创)
#起别名避免重名 import numpy as np #小技巧:print从外往内看==shape从左往右看 if __name__ == "__main__": print(' ...
- UnityEditorWindow自建窗口扩展
这里主要记录UnityEditorWindow的创建,以及常用的API接口样式 1,创建UnityEditorWindow 在Unity目录中,创建一个名为Editor的文件夹(任何位置),然后创建如 ...
- HTML、CSS、JS中常用的东西在IE中兼容问题汇总
1.因为国内360浏览器.QQ浏览器等更新较快,所以不考虑Chrome支持某个css与否,因为一般都支持. 2.因为火狐等使用的人较少,且更新较快,所以不考虑支持与否,因为一般都支持 3.主要就是汇总 ...