图零直播

软件测试的各个阶段内容介绍及详细解答快来了解一下

发布用户:tolink789 +收藏

发布时间:2018-04-28 10:59:52 已有82人浏览

 

今天图零小编和大家聊聊软件测试的各个阶段,你们都了解了吗?

测试的阶段:

软件测试,是软件项目整个研发流程中的一部分。根据软件规模的大小,一个完整的软件研发流程可以划分为不同的各个阶段:

(一)一般研发流程

通常,研发流程分为:需求分析、系统设计、程序设计、各阶段测试等。各阶段的产出物(文档)与测试阶段的对应关系请参照本文此前相关论述。

(二)银行研发流程

大型银行的应用系统研发,项目并行度高,规模大,投产以版本为单位。所以,为了保证投产版本的质量,其研发流程比一般的流程要更细分,通常包含单体测试、集成测试、系统测试、版本集成测试、适应性测试、验收测试等。

(三)各流程介绍

1、单体测试

单体测试的对象是单个源程序,测试的依据是程序规格书。测试者通常是程序编码员本人,使用的是白盒测试方法。测试目标是:能实现所有要求的程序功能。

由于是单体测试,程序的外部运行条件如输入、数据库、输出等一般需要使用模拟数据。模拟数据通常需要人工建立,也可以由模拟器产生。

2、集成测试

集成测试主要针对一组相关联的程序进行接口及组合功能测试。

这些相关联的程序,一般存在流程上的上下游关系:调用和被调用的关系;或者是数据使用的上下游关系:上游的输出是下游的输入等。与在单体测试阶段不一样,在集成测试阶段,对于某个程序而言,该程序的输入通常由调用程序提供;该程序需要处理的数据库通常是已经处在某个生命周期下接近真实环境的数据库;该程序的输出,通常是输出到下游程序。这样,通过前后、上下联动,既可以检查程序之间接口的正确性,又可以进一步检查上游程序处理的正确性和程序的组合功能。

集成测试的主要依据是应用规格书,如果关联程序跨应用的话,还要参考系统规格书。测试者不一定或不仅是程序编码员本人,可以是项目组其他兼职或专职的测试人员。测试过程主要使用白盒测试方法。

由于程序的调用与被调用关系往往是多对多的,即某个程序会调用多个程序,而某个程序会被多个程序调用。所以,理论上集成测试需要测试所有的调用组合,起码要测试主要的组合。

3、系统测试

系统测试是以项目为对象进行的测试。如果项目跨系统(应用组)的话,其测试范围不但会跨应用,也会跨系统;测试的依据是系统规格书;测试的组织和团队一般不是开发团队,而是产品线专业的系统测试团队;测试过程既使用白盒测试,也使用黑盒测试;测试的目标是在整个应用系统内,验证项目的所有功能。

除非数据来源涉及银行外部系统而外部系统又难以配合,在应用系统内从人机接口开始应尽量使用真实的数据而非使用模拟数据去证实系统间的接口和系统组合功能的实现。

在系统测试阶段,除了对项目进行测试,还要对产品线进行主流回归测试,以验证产品的整体功能,并确认经过本项目后,产品得到完善和提高,且质量没有受项目的影响。

4、版本集成测试

由于银行的软件研发项目,并非完成了一个项目的研发就投产一个项目。相反,通常是按规划好的版本计划,在一段周期里,一次集中投产若干个已完成的、可能相互之间没有关系的多个项目。版本集成测试是对整个要交付投产的版本进行集成测试。

测试的对象是整个将要投产的版本,测试的依据是版本功能说明书,测试者是研发部门组织的版本测试队伍,测试方法基本使用黑盒测试。测试的目标有两个:一是在所有项目整合成投产版本后,项目之间没有不良影响,整个版本的新功能可以正常实现;二是要保证整个版本在增加了新功能的修改后,原来的功能没有受到影响,整个版本的质量没有受到影响。

所以,版本集成测试不光要对项目相关功能进行测试,还要对项目所涉及的所有系统的所有主要的功能的主要流程进行回归测试,以保证整个版本的质量。

大量的回归测试尽可能使用测试工具、测试脚本进行自动化测试。

5、适应性测试

适应性测试重点是对整个版本进行非功能性测试,依据的是非功能需求书。测试者是研发部门的适应性测试团队,可以与版本测试团队是同一团队。

适应性测试针对的是各种性能要求和可靠性、可用性、可维护性等方面的要求。一方面要对版本的新功能进行适应性测试,另一方面也要对整个版本进行适应性测试,以保证投产的版本没有因为增加新功能而降低了各种性能。在性能测试方面,一般需要使用一些压力测试工具,在其他方面测试可能也需要一些特殊的测试方法和用例。

适应性测试应该尽量模拟真实的生产环境进行测试,以保证适应性测试的效果。包括使用类似生产环境的软硬件环境,使用类似生产环境的数据及使用类似生产环境的外部接口。末尾一条是特别困难的,因为可能会涉及外部资源和外部配合。所以,研发部门一般不具备进行适应性测试的条件,如果有条件,当然是建立一套基本独立的可以作为适应性测试的环境;如果没有条件,也可以利用生产环境的备份环境或灾备环境来进行测试。

由于适应性测试使用的数据来源于生产数据,为了安全,要对某些敏感数据进行脱密处理。

6、验收测试

测试阶段的末尾环节是验收测试。

验收测试的对象是各个项目,依据是软件需求书,测试者通常是需求提出方,起码需求方要参与测试,使用的是黑盒测试方法。验收测试的目的主要检验版本中包含的所有项目的功能是否达到用户的期望。

验收测试使用的环境可以与适应性测试使用的同一个环境。

图零科技欢迎你和我互动哦!关注图零直播微信公众号

点击菜单栏微我吧“Q我吧即可加我好友,与我更多互动!

 

 


上一篇:上海图零科技有限公司——安徽科技学院领导到访图零学院

下一篇:图零科技来告诉大家为什么我们一定要选python?

QQ咨询

微信咨询