软件测试相关的术语

上一篇 / 下一篇  2011-04-17 08:30:07 / 个人分类:Common Knowledgebase

软件测试Software Testing):软件测试是为了发现错误而执行程序的过程。或者说,软件测试是根据软件开发各阶段的规格说明和程序的内部结构而精心设计一批测试用例(即输入数据及其预期的输出结果),并利用这些测试用例去运行程序,以发现程序错误的过程。

 

错误(Error):程序员在编写代码时会出错,把这种错误称之为BUG。随着开发过程的进行,错误会不断的放大。例如,需求错误在设计期间会放大,在编写代码时还会进一步放大。

 

缺陷(Default):缺陷是错误的结果,更精确的说是错误的表现。而表现的方式有很多种,例如:叙述性文字、数据流框图、层次结构图、源代码等。缺陷可以分为过程缺陷和遗露缺陷。如果把某些信息输入到了不正确的表现方式中,就称为过错缺陷;如果没有输入正确信息,就是遗漏缺陷。在这两种缺陷中遗漏缺陷更难检测和解决,但通过评审常常可以找出遗漏缺陷。

 

失效(Failure):在缺陷运行时,常常会发生失效的情况。一种是过错缺陷对应的失效,一种是遗漏缺陷对应的失效。在这两种失效类型中,遗漏失效是最难处理的,主要依赖有效的评审,发现遗漏缺陷来避免失效的产生。

 

测试(Test):测试是一项采用测试用例执行软件的活动,在这项活动中某个系统或组成的部分将在特定的条件下运行,然后要观察并记录结果,以便对系统或组成部分进行评价。测试活动有两个目标,即找出失效和显示软件执行正确。测试可能会由一个或多个测试用例组成。

 

测试用例(Test Case):测试用例是为特定目的而设计的一组测试输入、执行条件和预期的结果。测试用例是执行的最小实体。

 

回规测试(Regression Testing):回规测试的目的是为了测试由于修正缺陷而更新的应用程序,以确保彻底修正了上一个版本的缺陷,并且没有引入新的软件缺陷。回规测试可以采用手工测试或自动化测试来执行原来所报告的缺陷步骤和方法,检验软件缺陷是否被修正。回规测试又可分为:完全回规测试和部分回规测试。完全回规测试是对所有修正的缺陷进行验证。但由于测试时间紧张,需要验证的缺陷数量巨大,可以进行部分回规测试。因此,在大多数时候,我们可以把测试用例按照测试优先级进行部分回规测试。

 

静态测试(Static Testing):是指不利用计算机运行被测试程序,而是通过其他手段达到测试目的的方法。通常采用的方法主要有代码检查和走查、桌面检查和同行评审。

 

动态测试(Dynamic Testing):是指由计算机真正运行的被测试的程序。通过输入测试用例,并对实际输出结果和预期输出结果进行对比分析,找出被测试的程序中的疏漏,然后进行错误定位和纠错处理,最终达到测试的目的。通常采用的方法有黑盒测试白盒测试和灰盒测试。

 

黑盒测试(Block-Box Testing):是一种从用户观点出发的测试,又称为功能测试、数据驱动测试或基于规格说明的测试。把被测试程序当作一个黑盒,忽略程序内部结构的特性,测试者在只需要该程序内部输入与输出之间的关系或程序功能的情况下,依靠能够反映这一关系或程序功能需求规格的说明书,来确定测试用例和推断测试结果的正确性。

 

白盒测试(White-Box Testing):是基于程序的内部结构的测试,又称为结构测试、逻辑驱动测试或基于程序的测试。把被测试程序当作一个白盒,对程序细节的严密校验,针对特定条件和循环设计测试用例,对软件的逻辑路径进行测试,在程序的不同点校验程序的状态,来判定其实际情况是否和预期的状态相一致。

 

灰盒测试(Gray-Box Testing):介于白盒测试和黑盒测试之间,是现代测试的一种理念。指在白盒测试中交叉使用黑盒测试的方法;在黑盒测试中交叉使用白盒测试的方法。

 

单元测试Unit Testing):是针对每个单元的测试,是软件测试的最小单位,它确保每个模块能正常工作。单元测试多数使用白盒测试,用于发现内部错误。

 

集成测试(Integration Testing):是对已测试过的模块进行组装,进行集成测试的目的主要在于校验与软件设计相关的程序结构问题。集成测试多数使用灰盒测试,用于校验所开发的软件能否满足所有功能和性能需求。

 

系统测试(System Testing):是检验被测软件与系统的其它部分的协调性,如能否适应硬件环境、数据库环境等。系统测试多数使用黑盒测试,其测试的范围比较广泛,除功能测试外,还包括容量测试、强度测试、易用性测试、安全性测试、存储测试、兼容性测试、安装测试、可靠性测试、可恢复性测试、文档测试等等。

 

α测试(Alpha Testing):是由一个用户在开发环境下进行的测试,也可以是公司内部的用户在模拟实际操作环境下进行的测试。这是在受控制的环境下进行的测试。α测试的目的是评价软件产品的FURPS(即功能、可使用性、可靠性、性能和支持)。尤其注重产品的界面和特色。α测试人员是除开产品开发人员之外首先见到产品的人,他们提出的功能和修改意见是特别有价值的。

 

β测试(Beta Testing):是由软件的多个用户在一个或多个用户的实际使用环境下进行的测试。与α测试不同的是,开发者通常不在测试现场。因而,β测试是在开发者无法控制的环境下进行的软件现场应用。在β测试中,由用户记下遇到的所有问题,包括真实的以及主观认定的,定期向开发者报告,开发者在综合用户的报告之后,做出修改,最后将软件产品交付给全体用户使用。β测试主要衡量产品的FURPS。着重于产品的支持性,包括文档、客户培训和支持产品生产能力。


TAG:

 

评分:0

我来说两句

Open Toolbar