软件测试的目的和原则,什么是bug,测试生命周期、开发模型、敏捷开发、配置管理

本文探讨了软件测试的核心目的,包括验证软件功能的正确性,并介绍了测试的基本原则,强调以客户为中心。文章详细阐述了测试生命周期的各个阶段,如需求分析、计划、设计、编码、测试和运行维护。同时,对比了瀑布模型、螺旋模型、增量迭代与敏捷开发的特点,重点讲解了敏捷开发中的测试挑战和scrum实践。此外,文章还分析了V模型和W模型在测试中的应用,强调了测试与开发的同步。最后,讨论了配置管理在软件测试中的重要作用,如确保软件的完整性和可塑性,以及支持多团队并行开发。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

软件测试的目的及原则:

目的:验证软件有或没有问题
原则:以客户为中心,遵循软件测试的规范、流程、标准和要求

什么是bug

当且仅当规格说明书存在的并且正确,程序与规格说明书不匹配才叫错误;
当没有需求规格说明书时,判断标准最终由用户决定。

测试生命周期

需求分析、计划、设计、编码、测试、运行维护

开发模型

  • 瀑布模型
    强调开发的阶段性,强调早期计划及需求调查,强调测试。风险在后期测试才能显露,不能早早得到修改
  • 螺旋模型
    渐进式开发模型之一。适用于规模大、复杂度高、风险大的项目。强调全过程风险管理,引入非常严格的风险识别、分析和控制。
  • 增量、迭代
    增量是逐块建造;迭代是反复求精的概念。
  • 敏捷开发
    敏捷宣言:
    个体交互大于过程和工具;
    可用的软件大于完备的文档;
    客户协作大于合同谈判;
    响应变化大于遵循计划;
    在每对比对中,后者并非全无价值,但我们更注重前者。

敏捷开发中比较流行的是scrum,scrum将产品的开发分解为若干个小sprint(迭代),其周期为1周到4周不等。成员5-9人。每期迭代要完成的user story是一定的,每次迭代会有一定的交付。

敏捷中的测试

  1. 挑战
挑战1:轻文档
挑战2:快速迭代
测试人员一切遵循敏捷开发原则,不能依赖文档,测试用例作用减弱,更多的用思维导图、探索性测试。讲求合作。

软件测试v模型

用户需求—需求分析与系统—概要设计—详细设计—编码—单元测试—集成测试—系统测试—验收测试
单元和集成测试检测程序是否满足软件设计的要求。
系统测试检测系统功能、性能质量特性是否达到系统要求的指标。
验收测试确定软件的实现是否符合用户和合同的需求。

软件测试W模型

用户需求—需求分析和系统—概要设计—详细设计—编码—集成—实现—交付
用户需求和验收测试准备—需求分析和设计系统测试准备—概要设计和集成测试准备—详细设计和单元测试准备—单元测试—集成测试—系统测试—系统测试—验收测试
测试和开发是同步执行的

软件测试和配置管理

配置管理是通过对软件生命周期不同时间点的软件配置进行标识,并对这些软件配置项的更改进行系统控制,从而达到保证软件产品的完整性和可塑性的过程。
优点:

能够对文档、代码的变化进行有效的管理;
能够方便重现某个文件的历史版本;
能够重新编译某个历史版本,使得维护工作变的容易。
能够使得异地多团队开发、并行开发成为现实。
提高项目组人员流动时的工作效率。

测试人员应该从配置库取源代码编译后再测试,只有看见新的构建版本不在出现bug,才能将那个bug关闭。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值