您的位置:首页 > 其它

测试中的一些术语解析

2005-03-01 11:56 267 查看
测试中的一些术语解析<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

作者:Alan

 

关键词:单元测试、白盒测试、系统测试

 

对于测试上的术语,初入此道的测试工程师们常常将一些重要的概念混淆到一起。

即使是做了若干年测试的老鸟们,出现类似的错误也屡见不鲜。这里让我们一起回顾一些常见的理解错误。

1. 单元测试和白盒测试

把单元测试同白盒测试混淆到一起是最常见的错误。在很多人的眼中白盒测试似乎就是单元测试,两者之间可以划上一个等号。这种想法在程序员中也是普遍存在的。那么单元测试和白盒测试到底有什么区别呢?

单元测试(unit test)的概念起源于结构化测试理论中的V字模型。对于这个经典的模型大家是再也熟悉不过了,它是针对编码这一工作阶段的测试,于此对应的就是针对设计的集成测试和需求的系统测试。虽然目前有很多测试层次模型,但是都是基于传统的V测试模型。所以从这个意义上面说,单元测试本质上是一种级别较低(low level)的测试,它反映的是测试级别信息。程序员在日常的开发中经常无意识的在做一些单元测试,只是我们没有意识到而已。

 

白盒测试是针对被测对象内部的逻辑结构,架构的一种测试方法。从定义来看白盒测试是一种测试的方法,也就是说它是一种普遍适用方法论。在测试中,我们可以在系统测试中采用白盒技术来设计测试用例。同样在单元测试中我们也可以使用黑盒方法来设计测试,比如测试一个函数的接口,我们只考虑输入值和输出之间的对应关系,这是典型的一种黑盒测试方法。

单元测试和白盒测试是两种不同的概念,在使用中应该加以区别。

2. 系统测试,压力测试,性能测试

压力测试,性能测试是常见的测试类型(type),系统测试是最高级别的测试。两者之间还是有着明显的区别。由于压力测试,性能测试针对的是整个系统,并且测试执行的前提是整个系统搭建完毕,所以压力测试和性能测试都属于系统测试的范畴。但是把三者之间混淆在一起的情况经常发生。在网络上的一些测试计划模板和测试策略中,常常把系统测试,压力测试和性能测试作为同一级别的测试或者做为同一类型的测试。

3. Validation (确认) 和verification(验证)

Validation 和 verification 都是测试工程师的工作职责(工作内容),由于翻译上的原因两者常常被翻译成为同一个词语-确认。正是由于这种翻译上的偏差,客观上让不少测试人员产生了错误的理解。

 

Validation 关注的是 Are we do right things ? 也就是做的东西是不是我们所期望的,比如需求是不是被实现了。

Verification 关注的是 Are we do things right ? 我们做事情的方法是否正确,也就是实现方法是否正确。

作为测试工程师来说,在设计测试用例的时候需要从这个两个方面来考虑问题。日常中经常被忽略的是 Verification ,就是验证实现方法是否正确。错误的实现方法在一定的输入域里,输出域是正确结果的。但是就整个输入集合而言,可以产生错误的输出,比如边界值分析就是设计针对此类问题的常用方法。

测试概念对于测试工程师而言是非常重要的。不论是测试交流还是对测试的理解,正确无偏差的概念理解都是至关重要的。对于刚刚接触测试的工程师,这里推荐一本书:Testing computer software (Kaner) ,中文的名称为软件测试。该书中对测试上的术语解释的非常清晰,不失为一本优秀的入门读物 。

----------------------------------------------------------------------------------------

[作者简介]

    名:Alan

研究方向:软件工程与理论. 

业余爱好:体育,音乐,爬山.

Emailalanker@sohu.com .

所在地:上海
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息