软件测试基础-软件测试的分类

1.按照开发阶段划分
按照开发阶段软件测试可分为:单元测试、集成测试、系统测试、确认测试和验收测试。
  • 单元测试:对针对软件设计的最小单位-程序模块进行正确性检验的测试工作。
  • 集成测试:集成测试是检验程序单元的接口关系,逐步集成为符合概要设计要求的程序部件或整个系统。软件集成是一个持续的过程,会行程很多临时版本,在每个版本提交时,都需要进行冒烟测试,即对程序的主要功能进行验证。
  • 确认测试::检测与正式软件是否满足软件需求说明书中规定的要求。
  • 系统测试:系统测试是在真实或模拟系统运行的环境下,检查完整的程序系统能否和系统(包括硬件、外设、网络和系统软件、支持平台等)正确配置、连接、并满足用户需求。(功能、安全、性能、兼容性、易用性、稳定性、UI等)
  • 验收测试:按照项目任务书、供需双方约定的验收依据文档进行的对整个系统的测试与评审、决定是否接受或拒收系统。
 
2.按照测试技术划分
  • 白盒测试:又称为结构测试。通过对程序内部结构的分析、检测来寻找问题。
  • 黑盒测试:通过软件的外部表现来发现其缺陷和错误。
  • 灰盒测试:介于白盒测试和黑河测试之间的测试。汇合测试关注输出对于输入的正确性;同时也关注内部表现,但不像白盒测试那样详细、完整,只是通过一些表征性的现象、时间、标志来判断内部的运行状态。
软件测试方法和技术的分类与软件开发过程相关联,它贯穿了整个软件生命周期。走查、单元测试、集成测试、系统测试用于整个开发过程中的不同阶段。开发文档和资源程序可以应用单元测试和走查的方法;单元测试可以应用白盒测试的方法;集成测试应用近似灰盒测试的方法,而系统测试和确认测试应用黑盒测试方法。
 
3.按照测试实施组织划分
按照测试实施组织划分,软件测试可分为开发方测试(α测试)、用户测试(β测试)、第三方测试
  • α测试:可以和软件的“系统测试”一并进行。
  • Β测试:通过用户各种方式的大量使用,来发现软件存在的问题与错误,把信息反馈给开发方修改。
  • 第三方测试:软件质量工程强调开展独立验证和确认(IV&V)活动。IV&V是由在计数、管理和参悟上与开发组织具有规定程度独立的组织执行验证和确认过程。
 
4.其他
(1)代码走查: 代码走查的最主要的目的是为了发现程序中的逻辑错误(参考:软件测试】代码走查 )
  • 代码的注释与代码是否一致?注释是否是多余的?
  • 是否存在超过3层嵌套的循环与/或判断?
  • 变量的命名是否代表了其作用?
  • 所有的循环边界是否正确?
  • 所有的判断条件边界是否正确?
  • 输入参数的异常是否处理了?
  • 程序中所有的异常是否处理了?
  • 是否存在重复的代码?
  • 是否存在超过20行的方法?
  • 是否存在超过7个方法的类?
  • 方法的参数是否超过3个?
  • 是否有多种原因导致修改某个类?
  • 当发生某个功能变化时,是否需要修改多个类?
  • 代码中的常量是否合适?
  • 一个方法是否访问了其他类的多个属性?
  • 某几项数据是否总是同时出现,而又不是一个类的属性?
  • switch语句是否可以用类来替代?
  • 是否有一类的职责很少?
  • 是否有一个类的某些属性或者方法没有被其他类所使用?
  • 在类的方法中是否存在如下的调用形式:a.b().c()?
  • 是否某个类的方法总是调用另外一个类的同名方法?
  • 是否某个类总是访问另外一个类的属性与方法?
  • 是否两个类完成了类似的工作,使用了不同的方法名,却没有拥有同一个父类?
  • 是否某个类仅有字段和简单的赋值方法与取值方法构成?
  • 是否某个子类仅使用了父类的部分属性或方法?
 
posted on 2020-04-22 10:16  憂憂er  阅读(408)  评论(0)    收藏  举报