测试分类及定义之UT-IT-ST区别

测试过程之UT-IT-ST的区别

2015年11月20日 15:20:50 HaveFunInLinux 阅读数 9527更多

分类专栏: 测试

本文转载至:http://www.51testing.com/html/15/384415-233345.html

  测试过程

区别

UT

IT

ST

定义

是对软件基本组成单元(软件设计的最小单位)进行正确性检测,如函数或一个类的方法。

(通常所说的接口联调)是单元测试的逻辑扩展。在单元测试的基础上,将所有模块按照HLD要求组装成为子系统或系统,验证模块间的接口是否正确的

已经集成好的软件系统,作为整个基于计算机系统的一个元素,与计算机硬件、外设、某些支持软件、数据和人员等其他系统元素结合在一起,在实际运行环境下,对计算机系统进行一系列的组装测试和确认测试

测试依据

1、源程序本身,包括代码和注释

2、LLD

1、单元测试的模块

2、HLD

 

SRS

测试目的

与LLD是否符合

与HLD是否符合

与SRS是否符合

测试方法

属于白盒测试范畴

属于灰盒测试范畴

属于黑盒测试范畴

考察范围

主要测试单元内部的数据结构、逻辑控制、异常处理等

主要测试模块之间的接口和接口数据传递关系,以及模块组合后的整体功能

主要测试整个系统相对于需求的符合度

评估基准

逻辑覆盖率

方法:

TDD(测试驱动开发)

接口覆盖率

方法:

1.每个接口被覆盖的程度

2.每个接口的等价类、边界值被覆盖的程度

测试用例对需求规格的覆盖率

方法:

1.      等价类两两组合

2.      边界值分析

3.      业务流程法

4.      状态迁移法

5.      错误猜测法

6.      输出域覆盖

被测对象

一个或一组函数

子系统、模块间接口

完整的软件系统及系统交互的软硬件平台。

测试时机

编码之后,代码

已经通过编译之后

在单元测试之后

 

集成测试之后

 

测试人员

开发人员或

白盒测试工程师

函数间/模块内集成是开发人员;模块间集成是白盒测试员;子系统间集成是黑盒测试员;

黑盒测试工程师

 

测试

通过标准

1、单元测试用例的执行率为100%,通过率为95%

2、语句的覆盖率达100%

3、分支的覆盖率达85%

 

1、各个单元模块结合到一起能够协同配合,正常运行

2、测试用例的执行率为100%,通过率为95%

 

1、系统功能、性能等满足需求规格说明书中的要求

2、测试用例的执行率为100%,通过率为95%

 

测试策略

控制流测试、数据流测试、排错测试、分域测试等

 

大爆炸、自顶向下测试、自底向上测试、三明治

 

功能测试性能测试、随机测试等

 

 

附录:

在软件测试中UT,IT,ST,UAT指单元测试,集成测试,系统测试 ,用户接受测试。

https://zhidao.baidu.com/question/877929920217915652.html

一、UT(单元测试,Unit Test):

单元测试任务包括:

1、模块接口测试;

2、模块局部数据结构测试;

3、模块边界条件测试;

4、模块中所有独立执行通路测试;

5、模块的各条错误处理通路测试。;

二、IT(集成测试,Integration Test):

也称系统集成测试(System Integration Test)或结合测试,集成测试阶段是以黑盒法为主,在自底向上集成的早期,白盒法测试占一定的比例,随着集成测试的不断深入,这种比例在测试过程中将越来越少,渐渐地,黑盒法测试占据主导地位。

三、ST(系统测试,System Test):

从技术角度看,系统测试是整个测试阶段的最后一步,所有的开发和测试在这一点上集中表现为生成一个具有一定功能的软件系统。该阶段主要对系统的准确性及完整性等方面进行测试。

主要进行:

功能确认测试、运行测试、强度测试、恢复测试、安全性测试等。系统测试的测试人员由测试组成员(或质量保证人员)或测试组成员与用户共同测试。在整个系统开发完成,即将交付用户使用前进行。在这一阶段,完全采用黑盒法对整个系统进行测试。

四、UAT(验收测试,User Acceptance Test):验收测试是向未来的用户表明系统能够像预定要求那样工作。

经集成测试后,已经按照设计把所有的模块组装成一个完整的软件系统,接口错误也已经基本排除了,接着就应该进一步验证软件的有效性,这就是验收测试的任务,即软件的功能和性能如同用户所合理期待的那样。

扩展资料

软件测试是伴随着软件的产生而产生的。早期的软件开发过程中软件规模都很小、复杂程度低,软件开发的过程混乱无序、相当随意,测试的含义比较狭窄,开发人员将测试等同于“调试”,目的是纠正软件中已经知道的故障,常常由开发人员自己完成这部分的工作。

对测试的投入极少,测试介入也晚,常常是等到形成代码,产品已经基本完成时才进行测试。

到了上世纪80年代初期,软件和IT行业进入了大发展,软件趋向大型化、高复杂度,软件的质量越来越重要。

这个时候,一些软件测试的基础理论和实用技术开始形成,并且人们开始为软件开发设计了各种流程和管理方法,软件开发的方式也逐渐由混乱无序的开发过程过渡到结构化的开发过程,以结构化分析与设计、结构化评审、结构化程序设计以及结构化测试为特征。

 

谈谈测试执行分层(UT,ST,IT)

http://www.51testing.com/html/99/n-211399.html

发表于:2010-3-26 15:10  作者:未知   来源:51Testing软件测试网采编

字体:大 中 小 | 上一篇 | 下一篇 |我要投稿 | 推荐标签: 测试执行 测试管理

  V模型体现了测试设计分层和测试执行分层的概念,本文以作者自身的理解谈谈测试执行分层,不过从实际项目运作情况来看,真正做到测试执行分层的并不多,这里原因有很多种,暂且不论。

  1. UT

  单元测试的对象是LLD中所划分定义的程序单元或模块,它也是单元测试用例设计中可测试的最大单元。该测试对象可能由一个或多个函数或者类组成,测试设计就是对测试对象进行测试用例设计。

  UT的目的,是通过函数运行来检查模块代码对于LLD文档的顺从性,验证每个函数的输入输出响应,与它在详细设计文档中预先定义的是否一致。函数是产品开发实现的最基本单位,下一个实现单位是模块,从测试的角度看,希望UT完成后,每个函数都牢固可靠,下一步的IT测试将聚焦在函数之间配合能否实现分配需求,而不用担心函数本身的输入输出响应问题。

  单元测试比较适合开发人员做。

  2. IT

  集成测试是指把若干个经过单元测试的单元组装到一起而进行的测试,集成测试应依据HLD,主要发现接口、依赖中的错误或不完善的地方。集成测试的对象为若干个单元测试对象的组合,至少为两个。

  IT的目的,是根据模块设计对模块的分解,从已验证的函数开始,逐层向上集成,得到一个可运行的模块。

  IT可以由开发人员做,也可以由测试人员做。

  不难看出,UT是面向每一个单元的测试,IT是测试单元之间的接口,可以把UT/IT归为“单元级”测试。

  3. ST

  CMM定义的系统测试:系统测试是针对软件项目组所承担开发的软件系统进行的整体测试,将软件系统作为整体运行或实施明确定义的软件行为子集的测试。主要采用的测试方法是黑盒测试,即不管程序内部的实现逻辑,以检验输入输出信息是否符合规格说明书中有关需求规定的测试方法。可见ST的测试对象是规格说明书,更确切的说,是模块需求规格说明书,所以一般也称为MST。模块SRS文档给出了模块的输入输出的相应要求。MST后,每个模块是牢固可用的。

  4. BBIT

  BBIT为模块间接口测试,验证模块之间的接口能不能配合,有时和联调混在一起,其实目的并不相同。BBIT的目的,是根据系统设计对系统的分解,从已通过验证的模块开始,逐层向上集成,得到一个可运行的系统。而联调一般涉及软件、硬件或者不同产品间的配合测试。MST和BBIT可以归到“模块级” 的测试,一个验证模块,一个验证模块间的接口。

  以上UT/IT/MST/BBIT一般由开发人员完成,系统基本可以运行起来了,测试人员可以开展SDV、SIT、SVT了。

  5. SDV

  SDV虽然属于测试人员开展的系统测试,但是有点偏灰盒测试,因为SDV验证各子系统的配合是否满足设计需求(DR),对内部的实现还是关注的,验证多个模块集成以后是否满足设计需求。

  6. SIT

  SIT也是验证设计需求是否得以满足,与SDV不同的是,SIT完全把系统当作一个黑盒来测试,不关心内部具体的实现。实际应用中,SDV和SIT 虽然都属于系统一级的测试,往往由不同项目组(子系统)的测试人员分别测试,他们只关注各自的子系统,所以还是把SDV和SIT归为“子系统级”的测试比较好。

  7. SVT

  SVT是验收测试,其测试对象是产品包需求OR。产品包需求给出了产品的范围,从产品可能的应用环境的角度刻画系统,SVT的目的就是确认(或验收)产品包需求给出的各种应用场景产品均能满足。

  产品包需求不考虑内部实现的差异,SVT也是从整个系统的角度考虑包需求的各种应用场景,属于“系统级”的测试。

  各个级别的测试描述完毕,回头再看看这个分层测试的模型图,不难发现以下几个特征:

  1)基于系统架构的分解结构(系统-子系统-模块-单元),开发按照自顶向下的顺序逐层设计,测试按照自底向上的顺序逐层验证,这个分解结构在每一层或每一个阶段,将开发和测试过程统一起来。

  2)在每一层,测试的对象是开发相应阶段设计的输出(包括需求和这个阶段的设计文档),测试的目的与开发相应阶段设计的思路是相辅相成的,所以决定每个阶段的测试如何开展、评价一个测试过程时,如果离开开发过程,只谈测试自身的话,是不系统、不全面的。

  3)除了“系统级”的SVT测试以外,其他各层的测试均包含两个方面:一是对这个层每个构件的测试,有n个构件就要测试n次,二是这n个构件之间接口的测试。例如:nSDV(每个测试项目组的SDV是一个SDV)和SIT、nMST(每个开发项目组的MST是一个MST)和BBIT、nUT和IT。

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值