美文网首页
软件测试类型

软件测试类型

作者: 南方小镇_ | 来源:发表于2018-07-04 13:28 被阅读14次

    按阶段划分

    一.单元测试

    二.集成测试

    三.系统测试

    四.验收测试

    按阶段划分-单元测试

    什么是单元测试(Unit Testing)

    单元测试是指对软件中的最小可测试单元进行检查和验证。

    对于单元测试中单元的含义,一般来说,要根据实际情况去判定其具体含义,如C语言中单元指一个函数,Java里单元指一个方法,图形化的软件中可以指一个窗口或一个菜单等。

    总的来说,单元就是人为规定的最小的被测功能模块。单元测试是在软件开发过程中要进行的最低级别的测试活动,软件的独立单元将在与程序的其他部分相隔离的情况下进行测试。

    按阶段划分-集成测试

    什么是集成测试(Integration Test)

    在单元测试的基础上,将所有模块按照设计要求(如根据结构图〕组装成为子系统或系统,进行集成测试。

    实践表明,一些模块虽然能够单独地工作,但并不能保证连接起来也能正常的工作。程序在某些局部反映不出来的问题,在全局上很可能暴露出来,影响功能的实现。集成测试主要关注模块与模块之间的接口。

    集成测试的关注点:在把各个模块连接起来时,穿越模块接口的数据是否会丢失。

    集成测试可以划分成2个级别:

    1.子系统间的数据集成测试。

    2.不同系统间的数据集成测试。

    按阶段划分-系统测试

    什么是系统测试(SystemTesting)

    将集成后的软件、计算机硬件、外设、网络等其他元素结合在一起,进行信息系统的各种组装测试和确认测试,系统测试是针对整个产品系统进行的测试

    目的是验证系统是否满足了需求规格的定义,找出与需求规格不符或与之矛盾的地方,从而提出更加完善的方案

    系统测试发现问题之后要经过调试找出错误原因和位置,然后进行改正。是基于系统整体需求说明书的黑盒类测试,应覆盖系统所有联合的部件。

    对象不仅仅包括需测试的软件,还要包含软件所依赖的硬件、外设甚至包括某些数据、某些支持软件及其接口等。

    系统测试范围/策略/类型

    功能测试、用户体验测试、性能测试、UI测试、兼容性测试、安装测试、文档测试、稳定性测试等

    按阶段划分-验收测试

    什么是验收测试(Acceptance Test)

    它是一项确定产品是否能够满足合同或用户所规定需求的测试。这是管理性和防御性控制

    主要确认软件是否按合同要求进行工作,既是否满足软件需求规格说明书中的要求。

    验收测试分类:

    1.非正式的验收测试

    а测试

      软件开发公司组织内部人员模拟各类用户行为对即将上市的产品进行测试。

    ß测试

       软件开发公司组织各方面的的典型客户在日常工作中实际使用,并要求用户报告异常情况、提出改进意见,然后公司再进行完善。

    2.正式的验收测试

         有正规的测试过程,需要制定测试计划、定义测试方案、选择测试用例,进行测试,结果提交。着重考虑软件是否满足合同规定的所有功能和性能,文档资料是否完整、准确,人机界面和其他方面。

    按是否运行程序划分

    •静态测试(Static Testing)

    不运行被测试的软件,而只是静态的检查代码、界面或者文档

    •动态测试(Execution-Based Testing)

    实际运行被测试的软件,输入相应的测试数据,检查实际的输出结果是否和预期结果相一致的过程。

    按是否查看代码

    1、黑盒测试(Black box)

      把软件看成一个黑盒子,在完全不考虑程序内部逻辑的情况下,检查程序是否满足用户需求。

    2、白盒测试(White box)

       对程序内部结构和算法进行测试。必须先全面熟悉程序内部逻辑结构,然后编写程序,对所有逻辑路径进行测试的一种方法。

    3、灰盒测试(Gray box)

        关注系统接口所实现的功能,是否和需求一致。

    其他划分

    •回归测试(Regression Testing )

        对软件的新版本测试时,重复执行上一个版本测试时使用的测试用例,防止出现“以前应用没有的问题现在出问题了”,这是全量回归;当在测试过程中,发现某个模块存在缺陷,开发修复后,测试人员重新验证该缺陷是否被修复,以及验证相关联的模块是否受影响,这叫部分回归。

    •冒烟测试(BVT测试)

        冒烟测试的对象是每一个新编译需要正式测试的版本,目的是确认软件基本功能正常,可以进行后续的正式测试工作。冒烟测试,也叫预测试。

    •敏捷测试(敏捷开发引发)

      敏捷开发的最大特点是高度迭代,有周期性,并且能够及时、持续地响应客户的频繁反馈。敏捷测试即是不断修正质量指标,正确建立测试策略,确认客户的有效需求得以圆满实现和确保整个生产的过程安全的、及时的发布最终产品。

      敏捷测试的特点:

      1、强调从客户的角度,即从使用系统的用户角度来测试系统。

      2、重点关注持续迭代地测试新开发的功能,而不再强调传统测试过程中严格的测试阶段。

      3、开发一个模块就测试一个模块,不需要等到系统所有模块都开发完成再测试。

    相关文章

      网友评论

          本文标题:软件测试类型

          本文链接:https://www.haomeiwen.com/subject/jfseuftx.html