2.2 测试级别和测试类型

2.2   测试级别和测试类型

测试级别与软件开发生存周期内的其他活动相关。在顺序 SDLC 模型中,测试级别通常定义为:一个级别的出口准则是下一个级别的入口准则的一部分。

测试类型,是与某种质量特性相关的测试活动的集合,这些测试活动中的大部分可以在每个测试级别进行。

2.2.1 测试级别

  组件测试(也称为单元测试),侧重于对单独组件的测试。组件测试通常需要使用测试工具或者单元测试框架。组件测试通常由开发人员在开发环境中进行。

  组件集成测试(也称为单元集成测试),侧重于对组件之间的接口及交互进行测试。组件集成测试重度依赖于集成策略方法,例如,自底向上集成,自顶向下集成或者大爆炸集成。

  •   系统测试,关注于对整个系统或产品的总体行为和能力。

  系统集成测试,侧重于对被测系统与其他系统以及外部服务的接口的测试。系统集成测试需要合适的测试环境,最好是与运行环境类似的测试环境。

  验收测试,侧重于确认和展示部署准备情况,这意味着系统满足了用户的业务要求。在理想情况下,验收测试应该由潜在用户执行。验收测试的主要形式有:用户验收测试(UAT、运行验收测试、合同验收测试以及法规验收测试、Alpha 测试和 Beta 测试。

测试级别可以通过以下(非详尽)属性列表来区分,以避免测试活动的重叠:

  测试对象

  测试目的

  测试依据

  缺陷和失效

  方法和职责

2.2.2 测试类型

在项目中可能会应用多种测试类型。本大纲主要涉及下列四种测试类型:

功能测试是用于评估组件或系统应该执行的功能的测试。功能是测试对象应该做的事情。功能测试的主要目的是检查功能完整性、功能正确性和功能适合性。

非功能测试是用于评估组件或系统除功能特性之外的其他属性。非功能质量特性:

  性能效率

  兼容性

  易用性

  可靠性

  信息安全性

  维护性

  可移植性

黑盒测试,是基于规格说明并根据测试对象外部的文档生成测试的测试技术。黑盒测试的主要目的是检查系统行为是否与规格说明描述一致。

白盒测试,是基于结构并根据系统的实施或系统的内部结构(如代码、结构、工作流和数据流)生成测试的测试技术。白盒测试的主要目标是通过测试将底层结构覆盖到可接受的水平。

2.2.3 确认测试和回归测试

变更,通常指对组件和系统做出的改进,这种改进可以是增加新特征,或通过修改代码以移除缺陷进行修复。测试还应该包括确认测试和回归测试。

确认测试用于确认原有缺陷是否已经被成功修复的测试。根据风险的不同,测试人员可以对软件的缺陷修复版本进行不同的测试,包括:

  执行先前由于存在缺陷而失败了的所有测试用例

  增加新的测试,以覆盖由于修复缺陷引发的任何变更

当进行缺陷修复工作的时间和预算有限时,确认测试的范围可能被严格限定,即仅执行重现原有(由缺陷引起的)失效的步骤,以检查失效是否已经消失。

回归测试确认变更未造成任何不良后果,包括已经经过确认测试的修复。这些不良后果可能会影响进行更改的同一组件、同一系统中的其他组件,甚至其他关联的系统。回归测试可能不局限于测试对象本身,还可以与环境相关。建议首先执行影响分析以优化回归测试的范围。影响分析显示软件的哪些部分可能受到影响。

回归测试套件会被多次运行,通常回归测试用例的数量会随着每次迭代或发布而有所增加,因此可以优先考虑自动化回归测试。这些测试的自动化应该在项目的早期开始。在使用持续集成(CI)时,比如 DevOps,最好也包括自动化回归测试。根据情况,可能包括不同级别的回归测试。

如果缺陷修复和/或变更发生在某些测试级别上,对测试对象进行的确认测试和/或回归测试就需要在所有涉及的测试级别上进行。

原创文章,作者:iTestCat,保留所有权利,禁止转载,如若转载,请联系作者!

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
iTestCat的头像iTestCat
上一篇 2023年2月19日 下午5:16
下一篇 2023年2月28日 上午10:22

相关推荐

发表回复

登录后才能评论