黑盒测试-软件测试的分类

一、按照开发阶段划分

单元测试、集成测试、系统测试、验收测试

1、单元测试

一般要读程序和代码,大多数时候,单元测试都是由开发人员自己去完成
又称模块测试,针对软件设计的最小单元——程序模块进行正确性检验的测试工作。

  • 其目的在于检查每个程序单元能否正确实现详细设计说明中的模块功能、性能、接口和设计约束等要求,发现各模块内部可能存在的各种错误。
  • 单元测试需要从程序的内部结构出发设计测试用例。
  • 多个模块可以平行独立地进行单元测试。

2、集成测试

也叫做组装测试。比较多的涉及到接口测试(接口测试工具和方法)

  • 通常在单元测试的基础上,将所有的程序模块进行有序的、递增的测试。
  • 集成测试是检验程序单元或部件的接口关系,逐步成为符合概要设计要求的程序部件或整个系统。

3、确认测试(功能是否实现)

一般都是正向的测试,一般不作为正式的测试环节。
确认测试也叫有效性测试或者冒烟测试。

  • 是在模拟的环境下,验证软件的所有功能和性能及其他特性是否与用户的预期要求一致。
  • 通过了确认测试之后的软件,才具备了进入系统测试阶段的资质。

4、系统测试

全面的:系统的所有功能的测试
模拟所有的软件用户的操作
全方位:测试的软件和硬件的联系,和系统软件的联系,和其他软件的关系

  • 系统测试是在真实的系统运行的环境下,检查完整的程序系统能否和系统(包括硬件、外设、网络和系统软件、支持平台等)正确配置、连接,并最终满足用户的所有需求。

5、验收测试

扫描二维码关注公众号,回复: 15819954 查看本文章

一般由供求双方之间进行
有三种验收测试的主体:α测试(软件开发商自己进行的交付前的测试),β测试(软件的需求方自己进行的测试),γ测试(软件的需求方找的第三方软件测试)

  • 是软件产品检验的最后一个环节。按
  • 照项目任务书或合同、供需双方约定的验收依据文档进行的对整个系统的测试与评审,决定是否被接收或拒收系统。

二、按照代码运行划分

1、静态测试

  • 不实际运行被测对象,只是静态的检查程序代码、界面或文档中可能存在错误的过程
  • 代码测试:主要测试代码是否符合相应的标准和规范
  • 界面测试:主要测试软件的实际界面与需求中的说明是否相符
  • 文档测试:主要测试用户手册和需求说明是否符合用户的实际需求

2、动态测试

  • 指实际运行被测对象,输入相应的测试数据,检查实际输出结果和预期结果是否相符的过程。
  • 所以我们判断一个测试属于动态还是静态测试,唯一的标准就是看是否运行程序

三、按照软件特性划分

1、功能测试

是黑盒测试的一方面,它检查实际软件功能是否符合用户的需求

  • 逻辑功能测试
  • 界面测试
  • 易用性测试
  • 安装/卸载测试
  • 兼容性测试

2、性能测试

  • 功能的另一个指标,主要关注软件中的某一功能在指定的时间、空间条件下,是否使用正常
  • 软件的性能包括很多方面,主要有时间性能和空间性能两种

3、安全性测试

  • 验证安装在系统内的保护机制能否在实际应用中对系统进行保护,使之不被非法入侵,不受各种因素的干扰。

四、按照测试技术划分

1、黑盒测试

  • 通过软件的外部表现来发现其缺陷和错误。
  • 黑盒测试法把测试对象看成一个黑盒子,完全不考虑程序内部结构和处理过程。
  • 黑盒测试是在程序界面处进行测试,它只是检查程序是否按照需求规格说明书的规定正常实现

2、白盒测试

  • 通过对程序内部结构的分析、检测来寻找问题。
  • 白盒测试可以把程序看成装在一个透明的盒子里,检查是否所有的结构及路径都是正确的,检查软件内部动作是否按照设计说明的规定正常进行。
  • 白盒测试又称结构测试

3、灰盒测试

介于白盒测试和黑盒测试之间的测试。
灰盒测试关注输出对于输入的正确性;同时也关注内部表现,但这种关注不像白盒测试那样详细、完整,只是通过一些表征性的现象、事件、标志来判断内部的运行状态。

五、其他测试分类

1、回归测试

  • 是指对软件的最新版本测试时,重复执行之前某一个重要版本的所有测试用例
  • 目的:验证之前版本产生的所有缺陷已全部被修复;确认修复这些缺陷没有引发新的缺陷

2、冒烟测试/确认测试

  • 是指在对一个新版本进行系统大规模的测试之前,先验证一下软件的基本功能是否实现,是否具备可测性,也叫可测性测试

3、随机测试/探测性测试

  • 是指测试人员基于经验和直觉的测试,发现一些边缘性的错误

4、猴子测试

  • 把自己当成不懂产品的笨蛋或者小动物,随便乱点,没有热呢的主要意识和想法参与进来,让一些意想不到的操作造成错误的结果

六、按照测试运行主体划分

1、手工测试

功能测试,点点点

2、自动化测试

利用工具软件,或者编写代码的方式,测试被测的软件系统(游戏外挂)

猜你喜欢

转载自blog.csdn.net/weixin_53328532/article/details/131648051