前面的内容请参见Android应用自动化测试-提纲。 本篇继续介绍Android SDK中的强大工具-Monitor。
devices界面上方的工具栏
dump HPROF File
第二个图标dump HPROF file,功能是可以下载更详细的对信息到hprof文件中,并利用如MAT这样的工具来对内存使用的情况进行进一步分析。
MAT是一个eclipse插件,可以在eclipse官网下载更新 。此处不再赘述MAT的安装和使用。
需要注意的是,在monitor工具中dump出来的hprof文件并不能被MAT工具直接加载分析,这时我们需要使用Android SDK中的转换工具hprof-conv将hprof文件转换为标准格式,hprof-conv位于SDK的platform-tools目录下
命令格式如:
> hprof-conv android.hprof mat.hprof
在MAT中打开转换后的mat.hprof文件,即可对heap信息进行进一步详细分析。
cause GC
工具栏第三个图标cause GC,作用和Heap界面中的cause GC作用相同
update threads
update Threads图标,执行后即可在右侧Thread页中看到当前应用的线程信息。如图:
该界面中的主要内容含义如下
字段 | 含义 |
---|---|
ID | 虚拟机分配的唯一的进程ID |
Tid | linux的线程ID,主线程ID和进程PID相同 |
Stauts | 线程状态 |
utime | 执行用户代码的累计时间 |
stime | 执行系统代码的累计时间 |
name | 线程的名字 |
其中status主要包括
status | 含义 |
---|---|
running | 正在执行程序代码 |
sleeping | 执行了Thread.sleep() |
monitor | 等待接受一个监听锁。 |
wait | Object.wait() |
native | 正在执行native代码 |
vmwait | 等待虚拟机 |
zombie | 线程在垂死的进程 |
init | 线程在初始化(我们不可能看到) |
starting | 线程正在启动(我们不可能看到) |
选中具体线程,下方是线程的堆栈调用信息。
关于android自动化测试的更多实战操作演示参见慕课网实战课程 Android自动化测试实战 工具 框架 脚本
欢迎保留作者信息和出处进行转载,欢迎关注微信公众号:秋草说测试。 原创测试干货资源池
网友评论