APP常见测试点总结

转载自 http://blog.csdn.net/gantao754246624/article/details/77985073  侵删

常见测试点总结:

1.安装、卸载测试

主要针对编译后源程序生成的APK安装文件。

主要测试点:a.生成的APK文件在真机上可以安装及卸载;

b.Android手机端的通用安装工具,如:豌豆荚及91助手等工具可以正常安装及卸载程序。

2.在线升级测试

测试点:a.验证数字签名 b.升级后可以正常使用 c.在线跨版本升级 

3.业务逻辑测试

业务逻辑测试:主要测试客户端业务能否正常完成

功能点测试:主要测试客户端功能点是否正常使用

关联性测试:主要测试客户端与PC端的交互,客户端处理完后,PC端与客户端数据一致

4.异常测试

主要包含了断网、断电、服务器异常等情况下,客户端能否正常处理,保证数据正常性。

5.交互性测试

客户端作为手机特性测试,包含被打扰的情况13种,来电,来短信,低电量测试等,还要注意手机端硬件上,如:待机,插拔数据线,耳机等操作不会影响客户端。

6.易用性测试

界面与交互性测试:符合android交互规范,符合用户使用习惯,操作方便简单,具有一致性。

可用性测试:用户体验好,用户操作方便,用户使用错误率低。

7.适配测试

手机不同分辨率支持:客户端支持800*480,960*540,1920*1280等;

手机不通版本的支持:4.0, 5.0, 6.0;在测试计划中,需要安排单独的时间用于android不同系统的兼容性测试,包括7.0版本等;

手机不同厂家系统的支持:不同厂家会有不同android系统,例如:小米收,华为输入法。是市场主流的系统及厂家不同型号的支持;

手机不通尺寸的支持:4.0到7.0屏幕在UI显示有区别的,要支持最大到最小。

解决方案:

a.自行购买或者使用借来设备来实际验证。耗费资金,购买几台。

b.第三方云测试的解决方法。

c.整理不兼容的地方,然后去分析app总可能不兼容的代码。对技术能力的要求比较高,前期也需要花费不少的时间。

d.利用友盟等第三方统计平台获得应用对应的TOP N 的记性重点进行测试。

8.客户端侧性能测试

偏重客户端侧CPU、MEM、流量、电量以及客户端在不同网络环境下响应速度等等。

大数据的测试:主要在特定环境下,客户端一次性更新大量的数据,客户端能否正常处理,分为三种情况:

a.客户端第一次使用,的一次就更新大量数据

b.客户端在平时更新中,更新大量的数据

c.客户端已经在手机本地下载很多数据后,再次更新大量数据。

9.电量与流量测试

手机的电量及流量测试主要是为了站在用户角度思考,毕竟电量、流量消耗比较大,会影响客户的使用感受。手机端量使用是和CPU使用率成正比的。由于这个没有比较详细的规定,只能出一个通用范围。CPU使用率不能超过10%以上,流量不要超过10M以上。一般通过android手机端一些监控软件获取数据。

当然也可以通过代码打点获取。

10.内存泄漏测试

OutOfMemory。

11.外网与场景测试

主要是模拟客户使用网络环境,检验客户端程序在实际网络环境中使用情况及进行业务操作。外网测试主要覆盖到wifi\3G\4G、net\wap、电信\移动\联通,所有可能的组合进行测试。

原则:a.尽可能全面覆盖用户的使用场景,测试用例中需要包含不同网络排列组合的各种可能; b.模拟信号被屏蔽时候,客户端的影响等; c.做外部场景测试,在高山、丘陵、火车上等特殊环境下进行全面测试。

12.APP性能测试分类

客户端:

    a.应用测试(关注CPU、MEM、流量、GPU等)

    b.ROM测试

    c.其他(web页面,现在APP大多都是web页面)

服务器端:性能测试方法和WEB差不多

tips:客户端的测试其实比较推荐专用的硬件设备来,这样测出的数据更加准确,比如高速相机、功耗仪等

13.APP自动化测试分类

UI(robotium、Appium等)

接口

单元(junit、Robolectric等)

持续集成

tips:一句话,对编程要求高,逻辑性思维要求高

14.测试启动时间

a.代码里插入时间并打印Log.e

b.命令方式

    adb shell

    am start -W -n 包名/activity名

    -W是指启动完成之后,返回启动耗时

c.秒表、高速相机

d.adb logcat

    adb logcat >d:\log.txt

    启动应用,待加载完成后ctrl+c停止

    find "Displayed" d:\log.txt>d:\log1.txt

    find "包名" d:\log1.txt>d:]log2.txt

15.代码静态扫描

代码扫描工具Lint,它能非常容易得帮米找出代码上的结构问题

具体的检察规则可以自定义(局部,全局)

lint --list 获得检查项id和简要说明

lint --show xxx 获得详细说明

jenkins:持续版本构建,与lint搭配使用

lint:检查已有规则规范

findbugs:针对java平台代码的检查

16.traceview

手机root,代码中埋点,加SD卡读写权限。通过monitor.bat打卡.trace文件。

Debug.startMethodTracing("路径"); //在oncreate方法中,开始埋点

Debug.stopMethodTracing(); //ondestroy中,结束

17.手机电量测试

a.利用硬件设备:比如耗电量测试仪

b.第三方软件来检测:手机自带电量监控、360助手、GT等

c.命令方式(5.0以上版本)

    //初始化batterystats数据

    adb shell dumpsys batterystats --reset

    //得到整个设备的电量消耗信息

    adb shell dumpsys batterys > /storage/sdcard0/Download/b1.txt

    //得到指定app相关的电量消耗信息

    adb shell dumpsys batterystats 包名 > /storage/sdcard0/Download/b1.txt


18.测试流量

流量分两种:a.操作app b.不操作app

测试方法:

a.各类云测平台、DDMS的Network

b.命令(模拟器不支持,某些真机不支持)

    ps | grep com.android.browser 获取pid

    cat /proc/pid/status 获取uid

    cat /proc/uid_stat/uid/tcp_snd 发送的流量byte

    cat /proc/uid_stat/uid/tcp_rcv 接受的流量byte

c.android自带api

    long uidrx=TrafficStats.getUidRxBytes(10053); //10053表示uid

d.抓包(最好用root真机练习)

    通过tcpdump抓包,再通过wireshark直接读取报信息来获取流量


19.GPU

通过开发者模式-》显示GPU过度绘制

20.CPU

a.第三方工具、各类云测平台

b.dumpsys命令

    adb shell dumpsys cpuinfo | grep com.android.browser > /storage/sdcard0/Download/cpu.txt

c.top命令

    adb shell top | grep com.android.browser > /storage/sdcard0/Download/cpu.txt

tips:关注活动状态和静默状态下的情况

21.线上监控的方法

a.第三方的标准化的开源、商业产品,如Nagios、zabbix、Ganglia、百度统计等

b.自主研发的监控手机平台

c.APM,比如听云

d.用户反馈

app埋点监控测试:如友盟

你可能感兴趣的:(APP常见测试点总结)