在线客服
扫描二维码
下载博学谷APP扫描二维码
关注博学谷微信公众号
软件测试过程可以分为5个步骤,即单元测试、集成测试、确认测试、系统测试、验收测试。本文将详细分析这5个步骤的主要内容和意义,和大家谈谈各个步骤的具体操作流程。
1、单元测试
(1)定义
单元测试又称为模块测试,是针对软件设计的最小单位程序模块进行正确性检查的测试工作,单元测试需要从程序内部结构出发设计测试用例,多个模块可以平行地独立进行单元测试。
(2)内容:
a、模块接口测试
应对通过所测模块的数据流进行测试
调用所测模块时的输入参数与模块的形式参数的个数、属性和顺序是否匹配
所测模块调用子模块时,输入子模块的参数与子模块的形式参数在个数、属性和顺序上是否匹配。
输出给标准函数的参数的个数、属性和顺序是否正确。
全局变量的定义在各个模块中是否一致。
当模块通过外部设备进行输入/输出操作,文件属性是否正确、open和close语句是否正确,规定的I/O格式说明与I/O语句是否匹配;缓冲区容量是否与记录长度匹配,在读写之前是否打开了文件,读写之后是否关闭了文件,对I/O错误是否做了处理。
b、局部数据结构测试
局部数据结构是最常见的错误来源
不一致的数据类型
不正确或不一致的数据说明
使用尚未赋值或尚未初始化的变量
错误的初始值或错误的缺省值
c、路径测试
运算的优先次序、常见的比较和控制流
d、错误处理测试
遇见出错的条件,并设置适当的出错处理
e、边界测试
例如循环的次数,最大或最小值
(3)流程
利用设计文档设计测试用例;
创建被测模块的桩模块或驱动模块;
利用被测试模块、驱动模块和桩模块来建立测试环境,进行测试
驱动模块:相当于所测模块的主程序,它接收测试数据,把这些数据传送给所测模块,最后再输出实际结果桩模块:用以代替所测模块调用的子模块。
2、集成测试
(1)定义
又称为组装测试或联合测试,在单元测试的基础上,需要将所有模块按照概要设计说明书和详细设计说明书的要求进行组装。
在把各个模块连接起来的时候,穿越各个模块的接口的数据时候会丢失。
一个模块的功能是否会对另一个模块的功能产生不利的影响。
各个子功能组装完成后,能否达到预期的父功能
全局数据结构是否有问题
单个模块产生的误差累计起来是否会放大
模块组装成系统的方式:一次性组装方式和增殖式组装方式
(2)、一次性组装方式
先对模块分别进行测试,再把所有模块组装进行测试
缺点:发现错我不容易定位
(3)、增值式组装测试
先对一个个模块进行模块测试,然后将这些模块逐步组装成系统,分为两种方式:自顶向下的增殖方式和自底向上的增殖方式
a、自顶向下的增殖方式(不需要驱动模块)
将模块铵系统程序结构,严控制层次自顶向下进行组装。
首先以主模块作为被测模块兼驱动模块,所有直属主模块的下属模块全部用桩模块代替,对主模块进行测试。再采用深度优先或广度优先的策略,用实际模块代替桩模块,再用桩模块代替它们的直接下属模块,与已经测试的模块构成新的子系统。然后进行回归测试。
b、自底向上的增殖方式(不需要驱动模块)由驱动模块控制最底层模块的并行测试。
c、混合增殖式
自顶向下增殖方式:
优点:能够较早的发现主要控制方面的问题
缺点:需要建立桩模块,增加了一些附加的测试,涉及算法和输入输出的模块一般在底层,这些底层模块要到组装和测试的后期才能发现。一旦发现问题就会出现过多的回归测试。
d、自底向上增殖方式:
优点:不需要建立桩模块,建立驱动模块要比建立桩模块要简单得多,同时涉及到算法已近输入输出的模块要先测试,把最容易出现问题的部分在早期解决。
缺点:程序一直未能作为一个实体存在,直到最后一个模块加上才能形成一个实体,控制方面最后才能接触。
(4)集成测试完成的标志:
成功执行了测试计划中规定的所有集成测试
修改了所发现的错误
测试结果通过专门小组的评审
集成测试需要提交的测试报告:
集成测试计划、集成测试规格说明书以及集成测试分析报告
3、确认测试
(1)定义
确认测试的目标是验证软件的功能和性能以及其他特性是否与用户的要求一致。确认测试一般包括有效性测试和软件配置复查。一般有第三方测试机构进行。
(2)进行有效性测试
现软件确认要通过一系列黑盒测试。确认测试同样需要制订测试计划和过程,测试计划应规定测试的种类和测试进度,测试过程则定义一些特殊的测试用例,旨在说明软件与需求是否一致。
无是计划还是过程,都应该着重考虑软件是否满足合同规定的所有功能和性能,文档资料是否完整、准确人机界面和其他方面(例如,可移植性、兼容性、错误恢复能力和可维护性等)是否令用户满意。
确认测试的结果有两种可能,一种是功能和性能指标满足软件需求说明的要求,用户可以接受;
另一种是软件不满足软件需求说明的要求,用户无法接受。项目进行到这个阶段才发现严重错误和偏差一般很难在预定的工期内改正,因此必须与用户协商,寻求一个妥善解决问题的方法
(3)软件配置复查
保证软件配置的所有成分齐全,质量都符合要求。应该遵守用户手册和操作手册中的规定步骤。
4、系统测试
(1)定义
软件作为计算机系统的一部分,与硬件、网络、外设、支撑软件、数据以及人员结合在一起,在实际或模拟环境下,对计算机系统进行测试,目的在于与系统需求比较,发现问题。
(2)流程
完成系统测试计划(规划和步骤)。
完成系统测试方案。
完成系统测试用例,系统测试规程,系统测试预测试(冒烟测试)项。
执行系统测试预测试,系统测试用例,开展回归测试,校验已修复的问题,提交系统预测试报告,系统测试报告,缺陷报告。
5、验收测试
(1)定义
以用户为主的测试,软件开发人员和质量保证人员参加,由用户设计测试用例。不是对系统进行全覆盖测试,而是对核心业务流程进行测试。
(2)流程
安装测试、功能测试、界面测试
以上就是软件测试过程的步骤分析,希望可以帮助大家跟好的理解软件测试这一知识点的内容。如果还想深入学习软件测试,赶紧上博学谷官网吧!
— 申请免费试学名额 —
在职想转行提升,担心学不会?根据个人情况规划学习路线,闯关式自适应学习模式保证学习效果
讲师一对一辅导,在线答疑解惑,指导就业!
相关推荐 更多
学习软件测试编程的学习路线
学习软件测试编程的学习路线,很多人想学软件测试,有些人通过自学学习的知识都是零零散散的,找到一份完整的软件测试编程学习路线很难,小编整理了博学谷软件测试就业班的课程路线编写了软件测试编程学习路线供大家参考。
6515
2019-10-17 12:01:17
如何成为测试架构师?需要掌握哪些技能?
如何成为测试架构师?需要掌握哪些技能?软件测试师作为检测软件中的bug保证软件正常运行的IT医生,目前的就业市场十分广阔。当然,测试一直都是比较低门槛的IT技术岗位,想要更好的突破和发展,测试架构师是很有发展前景的就业方向。那么如何从一面普通的软件测试师成长为一名优秀的测试架构师呢?需要掌握哪些技能才能逆袭呢?为了解决这些问题,我们就一起来深度解析一下测试架构师。
5808
2019-12-02 20:38:27
软件测试新手入门必看手册
随着软件开发行业的日益成熟,软件测试岗位的需求也越来越大。众所周知,IT技术行业一直以来都是高薪岗位的代名词,零基础想要转业的朋友想要进入这个行业,入门软件测试是最佳的途径之一。考虑到大多数软件测试小白对这个行业的一片空白,本文为大家总结了软件测试新手入门必看手册,内容包括了软件测试的概念、意义以及详细的分类,下面一起来看看吧!
4901
2020-03-19 12:55:23
软件测试师的工作流程是什么?
目前,在IT行业中测试的职位数量仅次于开发,可以说是第二大技术就业岗位。然而许多人对测试师工作的理解还停留在,只需要像用户一样使用产品,然后发现有问题提交报告就行了。其实这是极其不准确的,软件测试师在测试产品前后通常有很多工作要做。下面我们就一起来看看软件测试师的工作流程。
5596
2020-05-21 11:06:31
自动化测试工程师的发展前景怎么样?好不好?
根据各大网络招聘平台的数据显示,越来越多的企业在招聘测试工程师的时候,都开始重视自动化测试这一重要技能。早在四年前,自动化测试的人才需求和薪资待遇就开始一路上涨。如果你问:自动化测试工程师的发展前景怎么样?好不好?答案无疑是肯定的,不论是行业的发展现状,还是不断扩大的人才需求,都在说明着自动化测试这一岗位正如朝阳般冉冉升起。
6473
2020-07-14 17:34:51