来自http://blog.csdn.net/metalwood/article/details/5697788
一、作为测试者
作为测试者,我们就不仅要熟悉该平台上的应用程序,还要对相应的开发技术有所了解,我们不必要做到跟开发者一样熟悉,但是也必须对该平台上的API有所了解,一个应用程序最容易在什么地方出现问题很清楚,这样才更有针对性的去测试。
测试有很多种测试,如果按照V模型的话,最初的单元测试(JUnit)一般有开发者自己完成,这根据公司的财力状况了,一般都是开发粗略的测一下。集成测试然后是系统测试,集成测试接触的不是很多,就不单独列出来讲了。说说系统测试吧。
就测试方法和传统应该来说没有什么改变,不过更有针对性,应该更有针对性,就是就Android应用的特征设计测试用例。
针对这点首先我们必须了解这个平台的特点,下面列出要熟悉的技术:
1. 什么是Android?熟悉Android Architecture
2. Android手机应用都包含组件(Application Framework),各个应用的具体细节部分,和传统的手机功能的区别
3. 该平台最有特点的地方
4. Android手机应用程序的运行机制
各个组件的特点
各个组件的生命周期
针对各个组件的测试方法
5. 可以练习开发一些应用以了解熟悉各个API的特点,这样有利于我们了解一个应用程序的在什么地方最脆弱,什么地方才是开发最容易忽视的地方。
6. 要熟练掌握各个抓log的工具的使用,各个log参数还有它们在什么时候使用
7. 要能够根据打出的log通过定位应用程序的问题(当然这个要开发把必要的log打出来)
8. Monkey压力测试工具
9. 各种shell命令(对android支持的linux命令需要熟悉他们的参数和用法。)
了解上面之后,我们才能在系统测试更有针对性的设计用例,比如对于相同content provider进行交互测试,看看应用程序对资源共享有无冲突等。
下面分享一副测试工程师进阶图片:资源来自网络