[TOC]
[白盒与黑盒到底什么?](http://blog.csdn.net/cadi2011/article/details/51408044)
1、我们似乎一开始工作就听到了白盒与黑盒?是黑白无常吗?到底他妈的是什么?
答:white-box testing(白盒测试) black-box testing(黑盒测试),没错,名称的由来很简单,直译老外的………………没办法谁让他们先进呢
白盒:就是直接从程序的源代码里开始搞,其实主要是测试API,再细点说,就是测试public的方法(当然还有静态代码走查啥的,也得算到这里头,还有语句覆盖(就是代码有没有得到执行))
黑盒:那就直接通过运行程序,开始搞呗,直接使用应用,看不到源代码,也就是我们常说的功能测试了……
总结:测试行为根据不同的角度,有非常多的分类,可见白盒与黑盒是根据是否能看见源代码为依据的。
2、细说黑盒
答:网上一搜黑盒测试,好家伙,立马就有分类了,黑盒包括功能测试与性能测试
功能测试又细分:逻辑测试、ui测试、易用性测试、兼容性测试
性能测试又细分:空间测试、时间测试
功能测试细分内容白话解释
逻辑测试:说白了就是人机交互事件测试,例如app里,你点击按钮啦什么的
ui测试:就是你眼睛看到的和设计稿是否一致
易用性测试:那就更简单了,就是用户体验,你用的爽不爽
兼容性测试:操作系统可以运行在不同的硬件,like Android运行在很多不同的手机上,你要把你的app在每一个操作系统上遍历一遍
空间测试:所谓空间,是你的app占用操作系统多少资源
时间测试:你的app占用了操作系统资源,最直接影响的就是启动时间、加载时间,你用直观的眼睛看到!
3、再议白盒
答:包含有:
静态代码走查(当然人工看起来就得累死,必须有框架啊)
代码覆盖率(就是每一条语句有没有得到执行,有的开发哥哥,写的判断,其实有的语句一辈子都执行不到,还有一些像废弃的一些方法)
逻辑功能走查(通常情况下是直接调用public 的方法)
三个都是白盒测试常用的一些测试内容
4、最后总结
白盒:从代码里做,实例方法,就拿到实例对象调用,静态方法,就拿到类调用。可做public,也可做private,总之想做就可以做,单元测试,就是白盒测试的一种……
黑盒:就是功能测试、手工测试,人肉测试………………………………