软件测试与开发流程

软件测试简介

        软件测试是对软件进行检测和评估,以确定其是否满足所需结果的过程和方法。它是在规定的条件下对程序进行操作,发现程序错误,从而衡量软件质量,并对其是否满足设计要求进行评估的过程。

        与计算机系统操作有关的计算机程序文档数据都可称为软件。程序、文档、数据这三者结合起来就是完整的软件。

软件开发模型

瀑布模型

优点:软件开发的各个阶段比较清晰,强调早期计划和需求调查,比较适合需求稳定的产品开发

缺点: 整个过程是线性的,测试排在最后,系统的早期错误可能后期才能被发现。

敏捷开发模型

适用于产品需求频繁变化和产品需要快速开发的场景。常见的敏捷开发模型有XP和Scrum。

XP(Extreme Programming,极限编程)

XP是一种近螺旋式的开发模型。它是把复杂的周期分解为一个个相对简单的小周期。极限编程从编程方法、小组实践、交付与发布三个维度来组织开发流程。

Scrum 

在Scrum模型中,最基本的概念就是Sprint。Sprint通俗来说就是一个迭代周期。

DevOps开发模型 

        DevOps(Dev和Ops的组合词)涉及软件整个开发生命周期中的各个阶段。DevOps是一个非常关注开发人员(Dev)、运维人员(Ops)以及测试人员之间沟通合作的开发模型。DevOps是通过自动化方式完成软件测试交付流程的,以便在构建、测试、发布软件能够更加快捷、频繁和可靠的运行。

 DevOps生命周期:

 (1)持续开发

  • 计划阶段
  • 编码阶段
  • 构建阶段

(2)持续测试

(3)持续集成(CI)

(4)持续部署

(5)持续监控

常见测试流程

单元测试

单元测试是对软件中的基本组成单位进行的软件测试。目的是检验软件的基本组成单位的正确性 

测试方法:白盒测试

集成测试  

集成测试是对软件系统集成过程中进行的测试,目的是检查软件模块之间的接口是否正确

测试方法:黑盒与白盒结合

冒烟测试

冒烟测试是在软件开发过程中针对软件基本功能的一种快速验证,是对软件基本功能进行确认验证的手段

测试方法:黑盒测试(手工或自动化测试方式)

系统测试

系统测试是对已集成好的软件系统进行彻底的测试,验证软件系统的正确性和性能等是否满足其规约所指定的要求。一般系统的主要测试工作都集中在系统测试阶段。在系统测试中,又包括功能测试、性能测试、安全测试、兼容性测试

测试方法:黑盒测试

验收测试

验收测试是部署软件之前的最后一种测试。验收测试的目的是确保软件准备就绪。

测试方法:黑盒测试

软件测试模型

V模型

V模型是开发模型中瀑布模型的一种改进。瀑布模型将软件生命周期划分为计划、分析、设计、编码、测试和维护这六个阶段。V模型改进了瀑布模型的缺点,在软件开发时期,开发活动和测试活动几乎同时开始。 

优点:明确标注了测试过程中存在着哪些不同的测试类型,并且可以清楚地表达测试和开发各阶段的对应关系。

缺点:顺序性,进入测试后发现的bug不容易找到根源。如果有较大的需求变更,会导致返工量较大。

W模型

W模型是从V模型演化过来,相对于V模型,在软件各开发阶段中W模型增加了应同步进行的验证和确认环节。W模型由两个V组成,分别代表测试过程和开发过程。测试与开发同步进行,有利于尽早、全面地发现系统中的问题。

优点:测试与开发同步进行,而且测试对象不仅仅是程序,还包括需求和设计。这样可以尽早发现软件缺陷,降低软件开发成本。

缺点:开发与测试依然是线性关系,项目的需求变更和调整依然不方便。如果前期工作中没有产生文档,根本无法执行W模型。

H模型 

H模型把测试完全独立出来,形成一个完成独立的工作。将测试准本工作和测试执行工作清晰地体现出来。

图中的其他流程可以是任意的开发流程。测试流程是灵活的,只要满足测试条件,并且完成测试准备活动,测试就可以进行了。

优点:在H模型中软件测试活动可以尽早准备、尽早执行,具有很强的灵活性。而且软件测试可以根据被测对象的不同而分层次、分阶段、分次序执行,同时也是可以被迭代的。

缺点:对于项目管理要求很高、对于测试人员的技能要求也很高、测试就绪点的分析也比较困难。

3种测试模型对比:

  • V模型适用于中小企业
  • W模型适用于中大型企业
  • H模型对测试人员的技能要求非常高,使用比较少 

系统测试工作流程

 Bug管理流程

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值