移动互联测试
Posted qwer12
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了移动互联测试相关的知识,希望对你有一定的参考价值。
android日志
实时打印日志
状态信息日志
ANR日志 application not responding
Monkey日志
实时打印日志
adb logcat -b main -v time> app.log 打印应用程序的log
adb logcat -v time> app.log 默认main
adb logcat -b radio -v time> radio.log 打印射频相关的log
adb logcat -b events -v time > event.log 打印系统事件的日 志,比 如触屏事件
其它实时打印日志:tcpdump、QXDM等等
Logcat
android提供了自己的log输出api-->位于android.util.
Log这个类中. 这个类比较常用的打印日志的方法有5个,这5个方法 都会把日志打印到 LogCat中: Log.v(tag,message); //verbose模式,打印最详细的日志
Log.d(tag,message); //debug级别的日志
Log.i(tag,message); //info级别的日志
Log.w(tag,message); //warn级别的日志
Log.e(tag,message); //error级别的日志
tag用来标记log消息的源头的.而message则是这条log的内容.
从日志的输出数量来算,error,warn,info,debug,verbose,数量从少 到多
状态信息日志
bugreport(命令adb bugreport>bugreport.log)。
bugreport记录Android启动过程的log,以及启动后的系统状态, 包 括进程列表,内存信息,VM信 息等等到.里面包含有 dmesg, dumpstate和dumpsys;
dmesg(命令adb shell dmesg > ldmesg_kernel.log)是kernel 的log,凡是跟kernel相关的,比如driver出了问题(相机,蓝牙, usb,启动,等等)
dumpstate是系统状态信息,里面比较全,包括手机当前的内存 信 息、cpu信息、logcat缓存,kernel缓存等等;
dumpsys这个是关于系统所有进程Process的内容都在这个里面
状态信息日志
adb shell dumpsys meminfo system是查看system这个 process 的内存信息
dumpsys [options]
meminfo 显示内存信息
cpuinfo 显示CPU信息
account 显示accounts信息
activity 显示所有的activities的信息
window 显示键盘,窗口和它们的关系
wifi 显示wifi信息
ANR--application not responding
ANR定义:在Android上,如果你的应用程序有一段时 间响应不够 灵敏,系统会向用户显示一个对话框,这个 对话框称作应用程序无响 应(ANR:Application Not Responding)对话框。用户可以选 择“等待”而让程序 继续运行,也可以选择“强制关闭” 。所以一个 流畅的 合理的应用程序中不能出现anr,而让用户每次都要处理 这个对 话框。因此,在程序里对响应性能的设计很重要, 这样系统不会显示 ANR给用户。
ANR日志路径:/data/anr/traces.txt
ADB命令
1. adb devices
2. adb install xxx.apk
3. adb pull
4. adb push
5. adb shell
6. adb kill-server
7. adb start-server
8. adb remount 重新挂载系统分区,使系统分区重新可写
9. adb uninstall apk包名
10.adb logcat –s
11.adb shell am start –n 包名/包名 + 类名 adb shell “su -c ‘am start -n apk.downloader/.activity.LoginActivity’“ (外部 授 权模式)
12. adb get-serialno 获得序列号
adb shell am命令
am: activity manager,管理activity, 打开或关闭进程 adb shell am
启动activity: adb shell am start -n com.android.camera/.Camera (组 件方式)
关闭activity: adb shell am force-stop com.android.camera
/a 声明可以进行数学运算
adb shell pm命令
pm: package manager,用来执行应用的安装及查询, 系统权 限,控制应用
pm list packages
pm list permission-groups
pm uninstall 包名
adb logcat 过滤log
过滤 adb logcat --help
adb logcat ActivityManager:I *:s
adb logcat | findstr ActivityManager
Adb shell keycode 模拟按键事件
adb shell input keyevent X
adb shell input swipe x1 y1 x2 y2
adb shell input tap x y
adb shell input text abc
Monkey与MonkeyRunner
Monkey与MonkeyRunner区别:
Monkey:随机事件流
MonkeyRunner:特定命令和事件
MonkeyRunner主要应用于功能测试和回归测试
APP测试总结
安装、卸载测试
验证数字签名。
安装、卸载测试主要针对编译后源程序生成的APK安装文件。
主要测试点:
1.生成APK文件在真机上可以安装及卸载;
2.Android手机端的通用安装工具,如:豌豆荚及91助手等工具可 以正常安装及卸载程序。
3.覆盖安装APK文件是否报错。
在线升级测试 (ota)
升级后可以正常使用。
在线跨版本升级。
业务逻辑测试
业务逻辑测试:主要测试客户端业务能否正常完成。
功能点测试:主要测试客户端功能点是否正常使用。
关联性测试:主要测试客户端与PC端的交互,客户端处理完后,PC 端与客户端数据一致。
异常测试-中断测试
交互性测试:客户端作为手机特性测试,包含被打扰的情况13种, 来电,来短信,低电量 测试等,还要注意手机端硬件上,如:待机, 插拔数据线、耳机等操作不会影响客户端。
异常性测试:主要包含了断网、断电、服务器异常等情况下,客户 端能否正常处理,保证 数据正确性。 客户端侧性能测试
基准性能测试:主要通过压服务器端接口及客户端在不同网络环境 下响应速度。主要为258 原则。
大数据量的测试:主要在特定环境下,客户端一次性更新大量的数 据,客户端能否正常处 理,分为三种情况:
1.客户端第一次使用,第一次就更新大量数据;
2.客户端在平时更新中,更新大量的数据;
3.客户端已经在手机本地下载很多数据后,再次更新大量数据。 所 谓的“2-5-8原则” ,简单说,就是当用户能够在2秒以内得到响应 时,会感觉系统的响 应很快;当用户在2-5秒之间得到响应时,会感觉 系统的响应速度还可以;当用户在5-8秒 以内得到响应时,会感觉系统 的响应速度很慢,但是还可以接受;而当用户在超过8秒后仍 然无法得 到响应时,会感觉系统糟透了,或者认为系统已经失去响应,而选择离 开这个 Web站点,或者发起第二次请求。
易用性测试
界面与交互性测试:符合Android交互规范,符合用户使用习惯, 操作方便简单,具有一致性。
可用性测试:用户体验好,用户操作方便,用户使用错误率低。
适配测试-兼容测试
手机不同分辨率支持:720P、1080P等。
手机不同版本的支持:安卓7.0、安卓8.0,ios8、IOS9、IOS11 等。
手机不同厂家系统的支持:小米、华为、三星、苹果等。
手机不同尺寸的支持:3.5寸到5.5寸,甚至还有平板尺寸。
电量与流量测试
手机的电量与流量测试主要是为了站在用户角度思考,毕竟电量、 流量消耗比较大,会影 响客户的使用感受。手机端电量使用率是和 CPU使用率成正比的。由于这个没有比较详细 的规定,只能给出一个 通用的范围,CPU使用率不能超过10%以上,流量不要超过10M以 上。一般可以通过Android手机端的一些监控软件获取数据。 推荐三 款手机监控软件:Emmagee、GT、Trepn Profiler
内存泄漏测试
Android的内存机制
Android的程序由Java语言编写,所以Android的内存管理与Java 的内存管理相似。程序员 通过new为对象分配内存,所有对象在Java 堆内分配空间;然而对象的释放是由垃圾回收器 来完成的。
Android的虚拟机是基于寄存器的Dalvik,它的最大堆大小一般是 16M,有的机器为24M。因 此我们所能利用的内存空间是有限的。如 果我们的内存占用超过了一定的水平就会出现
OutOfMemory的错误。如果长期引用资源不释放就会引起内存泄漏
外网与场景测试
外网测试主要是现实模拟客户使用网络环境,检验客户端程序在实 际网络环境中使用情况 及尽心业务操作。
外网测试主要覆盖到wifi\\2G\\3G\\4G\\、net\\wap、电信\\移动\\联 通,所有可能的组合进行 测试。 原则:
1.尽可能全面覆盖用户的 使用场景,测试用例中需要包含不同网络排列组合的各种可能;
2.还有模拟信号被屏蔽的时候,客户端的影响等。
3.还要做外部场景测试,在高山、丘陵、火车上等特殊环境下的进 行全面测试。
以上是关于移动互联测试的主要内容,如果未能解决你的问题,请参考以下文章