个人接触 android 的时间也不是很长,稍微总结下在做 Android 测试的过程中,初次接触的同学需要些什么准备,以及需要些什么知识?下面讲到的东西可能很多人会觉得很简单,但我确实碰到过有新同学对这些点不知晓。
很大部分同学最常用的应该是 windows 系统,包括我自己。那么对于测试,windows 里面有些基础的东西,还是需要懂的。
Windows
——————————————————————————————————————————————————
1.任务管理器
有遇见过任务管理器中进程 PID 未勾选的同学。请进入查看>选择列,勾选 PID:
为何要勾选 PID?Android 最常见的,就是 5037 端口被占用,adb 起不来。所以遇见这种情况,首先就是去结束掉占用该端口的进程,这里就需要先确定占用该端口的进程。
netstat -ano | findstr 5037 | findstr LISTENING
找到进程的 pid,然后去任务管理器当中查找对应的 pid,杀掉该进程,当然,这里可以用 dos 命令 tasklist、taskkill。
2.cmd 命令窗口的设置
cmd 应该是最最常用的工具,打印 logcat,appium 的 log 信息、查看文件内容等等,但 cmd 默认的窗口太小,缓存也太小,所以经常在打印 logcat、显示其它信息的时候会冲掉很大部分内容,这里就需要设置下窗口大小级缓存。
请将屏幕缓冲区大小设大点,窗口大小也可以设大些,这样在显示信息的时候就不至于信息经常被冲掉。
3.dos 命令
dos 命令还是有部分需要多熟悉,比如 cd、dir、mkdir、del、remdir、copy、move 等等,有时候简单的任务,可以用这些命令组合成 bat 脚本,方便我们工作,另外可以安装一个 cygwin,可以在 windows 下很方便地使用一些 linux 的命令。
接着是 Android 部分的基础东西。
Android
———————————————————————————————————————————————————
1.adb 命令
常用的 adb 命令是必须要去掌握的。这里不列举,可自行查看 adb 帮助信息,最好每个命令都去实践下。
2.log 的抓取
logcat 日志(main log、events log、radio log),遇见 crash 时需要的 log,应用 anr 时需要的 trace 日志,还有 bugreport、dmesg 以及 tombstone 日志等等。。
另外,提供 log 给开发,也需要注意,不要一股脑地将几十 M 甚至上百 M 的 log 直接给开发,自己可以先根据时间点、报错信息将日志进行过滤下,然后再提供给开发,这里就需要我们测试对 log 了解深一点,具体什么样的问题需要提供什么样的 bug,这样可以省去开发定位问题的时间,顺便证明咱们自己的专业程度==。==
3.Android 的基础知识
四大组件、Activity 的生命周期什么的,像 appium 中需要配置应用的包名、Activity 等,这些可以找点相关的开发书籍自学下,不用学的很深。
4.linux
linux 的一些常用命令得熟悉(top、ps 等命令),简单的 shell 脚本要会写,这些都会对测试工作有帮助。
5.工具
Android 自带的 monkey、monkeyrunner 工具得学会去用,另外 SDK 里面的那些工具也要会用,知道是用来做什么的,比如 tools 目录下的 hierarchyviewer、uiautomatorviewer、monitor、traceview,build-tools 目录下的 aapt。
6.语言
java、python 语言可以花点精力去学习下,这两个语言应该是测试用的最多的,不会有坏处,想做自动化这块,没有语言基础肯定是做不好的。
7.测试框架
Android 常用的测试框架需要去了解下,robotium、appium、uiautomator、instrumentation 等等,深入了解了以后去老大面前吹吹牛 B
8.不做伸手党
碰到问题,先自己学会去解决,Stack Overflow、google 经常去使用,也是种技术,实在不行花点小钱买个。
最后一句,不怕不会,就怕不学!