简聊APP测试

一、大纲
1.功能性测试
2.兼容性测试
3.弱网络测试
4.稳定性测试
5.安全性测试
6.性能测试
7.H5测试

二、重点测试点:
(1)功能性测试
根据软件说明或者用户需求验证APP的各个功能实现;
根据需求,提炼APP的用户使用场景,验证功能;
根据相关测试标准,验证功能;
根据被测功能点的特性,采用特别的方法进行测试;
在测试过程中,即使修正业务或者理解需求错误;
使用思维导图进行测试点的编写和设计等。
常见的功能缺陷:
功能不起作用(菜单、按钮、链接、控件等失效);
功能错误(和预期的结果不一致,计算错误,显示错误等);
功能缺失(缺少应具备的菜单、按钮、选项等);
执行功能之后,全系统瘫痪(崩溃,CPU不足,ANR等);
执行功能之后,当前功能无法继续操作等。
安装(升级)和卸载:
是否可以在android不同版本上正常安装(有的软件有最低适配版本);
安装后是否可以正常操作;
异常情况下是否有相应的正常提示;
如果有网络之类的因素,要考虑在断网情况下是否正常;
安装过程中如果出现短信,闹铃,电话,断电等异常情况,是否能正常安装成功。

运行:
安装完成后,是否可以正常打开;
正常使用时,是否有操作引导和加载提示;
运行速度,界面切换是否流畅。

比如登录功能:
用户名或密码错误时,要有正确提醒;
用户退出登录后,要在下次启动APP时,显示为登录界面;
如果自动登录,打开要直接显示主页;
如果有APP何Web端,更新数据后,要在数据库中同步更改。
如果有移动端登录的互踢机制,下次异常登录时,对原用户要有正确的提醒等等。
数据的离线和缓存,在没网的情况下,显示的缓存数据。有网后,数据要及时更新。
清除缓存:
在手机设置中,可以清楚当前APP的数据和缓存。(清除数据 > 清除缓存)
APP在运行过程中,清除数据之后,是否程序有什么异常;
再次打开之后,会不会闪退。
(2)网络环境
测试软件在2G,3G,4G,wifi情况下的运行情况;
在公司内网和户外外网进行测试;
网速特差的情况下,交换数据是否能成功,若失败如何提示;
从有网到无网再到有网,数据是否能正常回复。

(3)UI测试
确保用户通过界面能正确、快速、有效的使用软件的各项功能;
确保APP界面符合公司或行业的标准,包括用户友好型,人性化,已操作等。
(4)异常测试
多个APP切换,不能被强制杀死进程;
App在强制清空数据后,还能正常运行;
长时间开启APP,是否会出现程序异常,(尤其是地图,扫码,定位之类的软件)
网络切换之后,是否能正常响应。
(5)兼容性测试
主要看以下几点:
操作系统版本(最低兼容);
屏幕分辨率/尺寸;
不同手机品牌;
安卓碎片化问题,疑难杂症。
(6)安全性测试
权限问题:对于没有必要获取的权限,要让开发删除。
数据库中保存敏感信息:关于用户的密码,支付密码或者指纹等关键信息,不但要加密保存,而且在用户注销的同时,所有这些敏感信息要删除。
日志信息:在开发或者调试版本中,会打开APP的日志记录,但是在正式环境上要关闭日志,否则容易被暴力破解日志信息,获取用户信息。
(7)性能测试
APP在不同网速下操作的流畅程度;
测试APP操作数据库的性能;
压力测试;
资源占用和消耗等。

(8)稳定性测试
Adb命令的总结:

Adb命令是安卓通用的调试工具,可以发送shell命令,对手机进行,安装、卸载、系统升级、运行shell命令等进行操作。
监听端口:5037
获取端口的状态:netstat -ano | findstr 5037

Windows 常用命令:
D: 切换D盘
Cd.. 返回上一层目录
Cd abc 进入当前目录下的
Dir 列出当前目录下的文件和目录
Mkdir 创建目录
Rd 删除目录

安装apk: adb install 。 (指:apk在电脑上的存储目录和名称)
卸载apk: adb uninstall ** (***指:apk的包名)

获取当前手机上所有的包名:adb shell pm list packages
(第三方的+系统自带的)

获取当前手机上所有第三方的包名:adb shell pm list packages -3
(-3 是指第三方的 -s 是指系统自带的)

获取当前设备的信息:adb get-serialno

把电脑的文件复制到手机:adb push ** ++++++
** 指:文件在电脑上存储的路劲和名称。 ++++++指的是目标文件在手机中存储的目录)

把手机的文件复制到电脑:adb pull **+++++++
** 指:文件在手机上存储的路径和名称。 ++++++指的是要把文件保存到电脑的存储目录)

Monkey详解
安卓的底层是linux系统: 查看所有文件夹: ls-l

Adb shell monkey -p com.hrbb.directbanks -v-v-v -s 123 --throttle 300 --ignore-crashes --ignore-timeouts 20000

-p:指定包名
-v : 一级日志:缺省值,仅提供启动提示、测试完成、和最终结果等信息。
-v-v : 工作中最少两个v , 一般是两个到三个。
-s 123 : 指定相同的 -s 值,那就两次发送相同的伪随机序列
--throttle 300:事件之间相隔300毫秒
--ignore-crashes :当应用遇到crash奔溃后,继续执行操作。直到全部操作完成为止。
--ignore-timeouts:当遇到ANR,系统无响应后,继续执行操作,直到全部操作完成为止。
20000:事件的总执行次数。

Adb shell monkey -p com.hrbb.directbanks -v-v-v -s 123 --throttle 300 --ignore-crashes --ignore-timeouts 20000 >E:/error.txt
(把日志保存在E盘下test文件夹下面的error.txt文件中)

在保存的日志中,可以搜索关键字,crash、error、anr、等。用来定位分析出现的BUG。

原文地址:http://blog.51cto.com/12854984/2072105

时间: 2024-11-02 13:11:49

简聊APP测试的相关文章

谈下APP测试和WEB测试的区别

先来讲下相同点: 1.都需要理论知识,相同的用例设计方法:边界值,等价类,错误推导法,场景法 2.同样的测试方法 验证功能是否满足需求 3.都需要检查UI  界面设计是否合理 4.性能检测  并发 吞吐率的检测  以及应用的稳定性测试,没有卡死闪退等验证BUG 5.二者后台都是一致的  都调用访问一样的后台 ResultApi 简短聊下移动APP的测试 1.业务相对简单点,移动app实质是一个简化的WEB程序,屏幕小注重用户体验 2.移动端支持多种网络制式 2G 3G 4G WiFi  断网 网

web测试与app测试的区别

看过了千里大腿的blog,再加上最近也有一些同学问我web与app测试的区别.所以在这里也献丑,写一篇随笔.希望对大家有所帮助. 笔者做了快三年的测试了.大部分时间都在做app的测试,web测试也做了半年左右.其实我觉得这两者并没有什么大的区别. 仅仅从功能测试的层面上来讲的话,在流程和功能测试上是没有区别的.那么区别在哪里呢? 我个人觉得就是由于载体不一样,所以系统测试和一些细节可能会不一样. 那么我们就要先来了解,web和app的区别. web项目,一般都是b/s架构,基于浏览器的,而app

APP测试思路

APP测试的时候,建议让开发打好包APK和IPA安装包,测试人员自己安装应用,进行测试.在测试过程中需要注意的测试点如下: 1.安装和卸载 ●应用是否可以在iOS不同系统版本或Android不同系统版本上安装(有的系统版本过低,应用不能适配) ●软件安装后是否可以正常运行,安装后的文件夹及文件是否可以写到指定的目录里. ●安装过程中是否可以取消 ●安装空间不足时是否有相应提示 ●如果应用需要通过网络验证之类的安装,需要测试一下断网情况下是否有相应提示 ●是否可以删除应用(可通过桌面删除,也可以通

手机APP测试几个要点

移动互联网App测试点包括: 1.安全测试 1)软件权限 -扣费风险:包括发送短信.拨打电话.连接网络等 -隐私泄露风险:包括访问[url=]手机[/url]信息.访问联系人信息等 -新增风险项 2)开发者官方权限列表信息比对分析 2.安装.运行.卸载测试 验证App是否能正确安装.运行.卸载,以及操作过程和操作前后对系统资源的使用情况,主要包括: 1)检测软件是否能正确安装.运行.卸载: 2)安装.卸载.更新错误报告: 3)其他辅助信息: -位置和文件夹是否合理: -组件是否正确注册或删除:

APP测试走过的那些坑

我现在的工作有一大部分也是app测试,虽然自己是app开发出身,但是在测试上还是跌入了很多大坑,毕竟二者还是有很大不同,所处的角度也是不一样的.而开发转测试中,我认为较难的也是一个角度的转换,以一个开发者的角度去测试,往往会忽略很多问题. 在记录app测试走过的那些坑之前,先总结下app测试的工作主要有哪些. 1.功能测试,无论是什么软件产品,必不可少的就是功能测试.我们需要测试这款app产品的功能是否完善,是否符合客户需求,是否符合用户正常体验.而功能测试最重要的一点也是测试案例的设计,这个抽

高新诚聘JAVA /.NET/APP测试/PHP开发

Java开发 1.3年以上JAVA软件开发相关工作经验 2. 熟悉J2EE架构,并熟练掌握Java编程语言 3. 熟悉Oracle数据库,熟练掌握数据库编程技术 4. 精通Spring/Hibernate应用框架 5.富有责任心,良好的沟通能力及团队合作精神 6.熟悉ZK框架使用优先 .net 中高级.Net(要求BS) 1. 工作仔细踏实,具备很强的工作主动性和团队合作的意识. 2. 良好的沟通能力.学习能力.独立解决问题的能力. 3. 具有4年以上.NET及数据集成方面的开发经验. 6. 熟

APP测试功能点总结

1.功能性测试:   ——根据产品需求文档编写测试用例. ——软件设计文档编写用例. 注意:就是根据产品需求文档编写测试用例而进行测试. 2.兼容性测试:   ——android版本的兼容性 ——手机分辨率兼容性 ——网络的兼容性:2G\3G\4G\WIFI,弱网下.断网时 ——app跨版本的兼容性 1.适配性测试: 1>.手机不同分辨率支持:客户端支持的分辨率等 2>.手机不同版本的支持:2.34.04.4等:在测试计划中:需要安排单独的时间用于android不同系统的兼容性测试,包括2.0

【转】移动App测试中的最佳做法

一说起软件测试,测试员想到肯定是去检查文件,功能,API,性能并确定软件是否安全,以及关于软件特定部分的其他事项.但是对于移动测试,测试员不得不基于用户移动使用模式考虑移动相关的功能. 本文是基于我的工作经验而写的.作为一名敏捷软件开发团队的软件质量保证经理,我一心投入iPhone,Android,WindowsPhone7的移动apps和移动webapps.在XING移动团队的日常工作以及与其他移动测试专家交流的过程中,我深刻了解了移动测试工作的困难.渐渐地,我明确了什么是帮助改进同事们和我的

黑盒测试之从系统测试到app测试

从8月15-至今,由系统测试转向app测试已有4月,怕忘记了短暂的系统测试所得,在此对比下二者的异同 一.侧重点不同 系统测试:1.系统内置app功能稳定可用,不出现闪退等恶劣现象2.系统稳定,不出现黑屏.死机.卡顿现象,使用流畅3.响应时间.功耗满足要求4.开机启动时间5.系统自带设置项功能正常可用,测试时要注意设置项与内置app等功能不冲突6.可正常开关机,测试时要考虑异常断电,关机重启,锁屏重启等现象7.系统需要做性能测试,之前经常用安兔兔等软件做性能测试8.简单的压力测试(以点击次数为准