软件测试的分类(一)

按测试阶段来分类

一、单元测试

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

单元测试的原则:

  1. 尽量保证各个测试用例是互相独立的。
  2. 一般由代码的开发人员来实施,用以检验所开发的功能符合自己的设计要求。

单元测试的益处:

  1. 能尽早发现缺陷
  2. 有利于重构
  3. 简化集成
  4. 文档
  5. 用于设计

单元测试的限制:

  1. 不可能覆盖所有的执行路径,所以不可能保证捕捉到所有路径的错误
  2. 每一行代码,一般需要3~5行测试代码才能完成单元测试。所以存在投入和产出的一个平衡。

单元测试框架:

  • Xunit
  • JUnit
  • nunit
  • PHPUnit
  • CPPUnit

二、集成测试

定义:是在单元测试的基础上,测试在将所有的软件单元按照概要设计规格说明的要求组装成模块、子系统或系统的过程中各部分工作是否达到或实现相应技术指标及要求的活动

集成测试的主要实施方案:

  1.  Big Bang:一次性集成,把大部分的开发模块耦合起来
  2. 自顶向下
  3. 自低向上:从程序的模块最底层开始,逐层向上测试。
  4. 核心系统集成:先将核心软件部分挑出来,然后再逐步向四周扩展
  5. 高频集成:每开发一段时间,就把现有代码测试

三、系统测试

定义:是将经过集成测试的软件,作为计算机系统的一个部分,与系统中其他部分结合起来,在实际运行环境下对计算机系统进行的一系列严格有效地测试,以发现软件潜在的问题,保证系统的正常运行。

重点关注:

  • 系统本身的使用
  • 系统与其他相关系统间的连通
  • 系统在不同使用压力下的表现
  • 系统在真实使用环境下的表现

四、验收测试

定义:也称交付测试。针对用户需求、业务流程的正式的测试,确定系统是是否满足验收标准,由用户、客户或其他授权机构决定是否接受系统。

用户验收测试:由开发商在交付前进行的测试

运行验收测试:主要是针对运维

合同和规范验收测试:主要针对政府的政策

alpha测试:开发者提供的环境,用户进行测试

Beta测试:用户提供的环境进行测试

我们往往是验收推动开发

集成测试和测试单元的不同

  1. 测试的对象不同:测试单元是以单元为单位,而集成测试是以模块或者子系统为单位。
  2. 测试的依据不同:单元测试主要针对详细设计,集成是对概要设计
  3. 测试的方法不同:集成是针对结构,单元针对的是内容。

系统测试和集成测试的不同

  1. 测试的对象不同:集成测试由通过了单元测试的各个模块所集成起来的构;系统测试除了软件之外,还包括计算机硬件及相关的外围设备,数据采集和传输机构、支持软件、系统操作人员等整个系统。
  2. 测试时间:集成测试介于单元测试和系统测试之间测试;系统测试是在集成测试之后。
  3. 测试内容:集成测试针对各个单元模块之间的接口;系统测试是整个系统的功能和性能。
  4. 测试角度:集成测试偏于技术角度的验证;系统测试偏于业务角度的验证。

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

前路茫茫——何处无香

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值