不要追求绝对的公平,红尘之中没有公平而言,人活一世,难得糊涂。                                           it is no use doing what you like, you have got to like what you do.

测试分类和比较

上一篇 / 下一篇  2007-03-17 10:32:46 / 个人分类:软件测试技术

8o:{ k*{[@r02.1 测试方式51Testing软件测试网C,j.yPz0a
白盒测试:关心软件内部设计和程序实现,主要测试依据是设计文档
Z0S*sPq$U+[AR0黑盒测试:不关心软件内部,只关心输入输出,主要测试依据是需求文档51Testing软件测试网E7a0X(IP9E o;ML
2.2 测试阶段51Testing软件测试网Y P'vHI+Y
单元测试、集成测试、系统测试、验收测试。是“从小到大”、“由内至外”、“循序渐进”的测试过程,体现了“分而治之”的思想。
{ i!d{'I?K0单元测试的粒度最小,一般由开发小组采用白盒方式来测试,主要测试单元是否符合“设计”。51Testing软件测试网vq0U"p4glRrL/r.g
集成测试界于单元测试和系统测试之间,起到“桥梁作用”,一般由开发小组采用白盒加黑盒的方式来测试,既要验证“设计”又要验证“需求”。
)A'z%d)PT|D#`1{0系统测试的粒度最大,一般由独立测试小组采用黑盒方式来测试,主要测试系统是否符合“需求规格说明书”。
3tdj8ie:^/w0验收测试与系统测试非常相似,主要区别是测试人员不同,验收测试由用户执行。
8?` ao$[9}%mB02.3问题
9L1c'O7E_0问题1:有了“黑盒”测试为什么还要“白盒”测试?
KqOdX O0黑盒测试只能观察软件的外部表现,即使软件的输入输出都是正确的,却并不能说明软件就是正确的。因为程序有可能用错误的运算方式得出正确的结果,例如“负负得正,错错得对”,只有白盒测试才能发现真正的原因。
K%}!gv;|0mlF0白盒测试能发现程序里的隐患,象内存泄漏、误差累计问题。在这方面,黑盒测试存在严重的不足。
zL-T{?2m-eO0问题2:由于单元测试要写测试驱动程序,非常麻烦,能否等到整个系统全部开发完后,再集中精力进行一次性地单元测试呢?51Testing软件测试网~T3r,T8oWw
如果这样做,在开发过程中,缺陷会越积越多并且分布得更广、隐藏得更深,反而导致测试与改错的代价大大增加。最糟糕的是无法估计测试与改错的工作量,使进度失去控制。因此为图眼前省事而省略单元测试或者“偷工减料”,是“得不偿失”的做法。51Testing软件测试网/m)k*eY?M8ONdI
问题3:如果每个单元都通过了测试,把它们集成一起难道会有什么不妥吗?集成测试是否多此一举?51Testing软件测试网yr*S.]2D
要把N个单元集成一起肯定靠接口耦合,这时可能会产生在单元测试中无法发现的问题。例如:数据通过不同的接口时可能出错;几个函数关联在一起时可能达不到预期的功能;在某个单元里可以接受的误差可能在集成后被扩大到无法接受的程度。所以集成测试是必要的,不是多此一举。51Testing软件测试网4E O;Q4Km
问题4:在集成测试的时候,已经对一些子系统进行了功能测试性能测试等等,那么在系统测试时能否跳过相同内容的测试?51Testing软件测试网+b/lM|9E;Hyic
不能!因为集成测试是在仿真环境中开展的,那不是真正的目标系统。再者,单元测试和集成测试通常由开发小组执行。根据测试心理学的分析,开发人员测试自己的工作成果虽然是必要的,但不能作为成果已经通过测试的依据。
k:o c_h0问题5:既然系统测试与验收测试的内容几乎是相同的,为什么还要验收测试?
7gBb\VZ`0首先是“信任”问题。对于合同项目而言,如果测试小组是开发方的人员,客户怎么能够轻易相信“别人”呢? 所以当项目进行系统测试之后,客户再进行验收测试是情理之中的事。否则,那是客户失职。
"UTKi e3H a0不论是合同项目还是非合同项目,软件的最终用户各色各样(如受教育程度不同、使用习惯不同等等)。测试小组至多能够模仿小部分用户的行为,但并不具有普遍的代表性。
J` qzJ0问题6:能否将系统测试和验收测试“合二为一”?
~2P%u R|E7C2z0系统测试不是一会儿就能做完的,比较长时间的用户测试很难组织。用户还有自己的事情要做,他们为什么要为别人测试呢?即使用户愿意做系统测试,他们消耗的时间、花费的金钱大多比测试小组的高。51Testing软件测试网9_"`%kd8aK!Z!@
系统测试时会找出相当多的软件缺陷,软件需要反反复复地改错。如果让用户发现“内幕”,一是丢脸,二是会吓跑买主。所以还是关起门来,先让测试小组做完系统测试的好。

2Q!\P7RL&z^C7R%y0

TAG: 软件测试技术

 

评分:0

我来说两句

Open Toolbar