测试基础知识

news2024/10/6 1:37:06

开发模型和测试模型

软件的生命周期

软件的生命周期指的是产品从设想开始到软件不再使用的时间。

软件的生命周期可以分为6个阶段:需求分析,计划,设计,编码,测试,运行维护。

瀑布模型

适用项目:小型的项目。

特点:由上图可以看到瀑布模型每个阶段只执行一次,所以瀑布模型是线性顺序进行的软件开发模型。

优点:

强调开发的阶段性

强调早期计划及需求调查

强调产品测试

缺点:

不能适应需求的变化。后期存在风险时失去了较早矫正的机会。

螺旋模型

适用项目:比较大的项目且风险比较高。

特点:是渐进式开发模型之一。

优点:每个阶段都会进行风险分析,避免一些线上问题的发生。

缺点:风险分析可能会分析错误,人力财力的投入较大。

增量、迭代

增量是逐块建造的概念。

迭代是反复求精的概念。

敏捷

敏捷是一种思想。

敏捷宣言:

  • 个体和互动 高于 流程和工具
  • 工作的软件 高于 详尽的文档
  • 客户合作 高于 合同谈判
  • 响应变化 高于 遵循计划

scrum

scrum是敏捷开发的一种模式。

Scrum 是一种敏捷项目管理框架,通过一组价值观、原则和实践来协助团队进行工作的结构化和管理。类似于橄榄球队(Scrum 这个词来自于橄榄球比赛中的一个术语)为了大赛而训练,Scrum 鼓励团队通过经验学习,自我组织解决问题,并反思他们的成就。

Scrum 的主要特点包括以下几点:

明确的角色分工:产品负责人、Scrum Master 和开发团队。

明确的会议:Sprint 计划会议、每日 Scrum 会议、Sprint 评审会议和Sprint 回顾会议。

明确的工件:产品积压、Sprint 目标和增量。

通过这些明确的角色、会议和工件,Scrum 帮助团队实现更好的协作、更高效的决策和更好的透明度,从而提高团队的生产效率和创造力。

Scrum 的基本流程如下:

  • 产品负责人负责制定并维护产品积压(Product Backlog),其中包括了所有待办的需求和功能,这些需求根据优先级进行排序。
  • Scrum 团队根据产品积压选取优先级最高的需求并将其转化为 Sprint 背log(Sprint Backlog)。
  • Sprint Planning 是一个会议,旨在协调 Scrum 团队的工作,确定 Sprint 目标,并定义可交付的增量。
  • Scrum 团队执行 Sprint Backlog 所包含的任务。
  • 每日 Scrum 会议是一种短暂的日常会议,旨在让 Scrum 团队成员汇报他们的工作进展、面临的问题和计划。
  • Sprint 结束时,Scrum 团队进行 Sprint 评审会议,演示已经完成的工作,并接受利益相关者的反馈意见。
  • Sprint 回顾会议是 Scrum 团队进行自我反思的过程,回顾 Sprint 执行的情况,识别优点和缺陷,并制定改进计划。

在整个 Scrum 流程中,团队需要不断地学习和改进。它强调简洁、透明和自我组织,以及快速响应变化的能力。

软件测试V模型

V模型是一种软件开发模型,它是从瀑布模型演变而来。V模型将软件测试活动与软件开发过程(从分析到设计)紧密结合,强调测试活动在整个软件开发周期中起到了至关重要的作用。V模型的流程可以概括为:系统需求 -> 系统架构 -> 软件需求 -> 软件架构 -> 软件详细设计 -> 软件单元(代码),并且测试工作也贯穿在整个流程中。V模型的左侧表示软件开发阶段,右侧表示相应阶段的测试活动,整个图形像一个"V"字形。

特点:左边是开发,右边是测试。

V模型作为一种软件测试模型具有以下优点

  1. 测试活动与软件开发过程密切结合,强调测试在整个开发周期中的重要性。这可以确保软件测试的及时性和有效性,避免了软件开发完之后才开始测试所带来的问题。
  2. 可以在早期发现缺陷并及时修复,从而降低软件开发成本,并提高软件质量和可靠性。
  3. 明确地标明了各个测试级别和对应的开发阶段,使得测试工作的组织更加清晰、系统化,方便测试人员的工作。
  4. 提供了从系统需求到最终测试的全面测试流程,确保所有的测试活动都可以被实施,避免了意外的遗漏。
  5. 由于测试是在软件开发阶段的同时进行的,因此开发人员可以更快地识别和定位问题,缩短处理时间,同时增强了开发人员和测试人员之间的协作和沟通。

缺点:发现问题时间太晚,维护成本会高一点。

软件测试W模型

它相对于传统的V模型,增加了软件开发各阶段中同步进行的验证和确认活动,因此可以更好地服务于软件的测试工作。W模型由两个V字型模型组成,分别代表测试与开发过程,明确表示出了测试与开发的并行关系。W模型强调测试伴随着整个软件开发周期,而且测试的对象不仅仅是程序,需求、设计等同样要测试,也就是说,测试与开发是同步进行的。从需求分析开始,测试工程师就应该参与到项目的测试中,以便尽早全面地发现问题

特点:测试的对象不仅仅是程序,需求、设计等同样要测试,测试与开发是同步进行的。

W模型的优点主要有:

  1. 测试与开发同步进行:W模型可以让测试活动伴随整个软件开发周期,并且测试与开发是同步进行的。这样可以避免在软件开发结束后才进行测试,从而可以更早地发现并修复问题。
  2. 强调全面测试:W模型不仅测试程序,还包括需求、设计等开发输出的文档。这样可以保证软件的全面性和正确性。
  3. 明确测试活动:W模型将软件测试分为多个阶段,每个阶段都有明确的测试活动和测试目标。这样可以更好地组织测试工作,提高测试效率。
  4. 管理风险:W模型在每个阶段都有验证和确认活动,可以及时发现并解决问题,从而降低软件测试风险。

缺点:不能拥抱变化。

软件测试的生命周期

软件测试的生命周期包括以下阶段:单元测试、集成测试、系统测试、验收测试、Alpha测试、Beta测试和回归测试等级别。其中单元测试是最基础的测试,集成测试是测试组件之间的接口,系统测试将整个系统视为一个整体进行测试,验收测试检查系统是否符合要求,Alpha测试是再开发之前内部测试,Beta测试是在发布之前公开测试。同时还有非功能测试、安全测试、可移植性测试等类型的测试。

软件测试的生命周期:需求分析——>测试计划——>测试设计、测试开发——>测试执行——>测试评估。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/416465.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

[考研数据结构]第3章之栈的基本知识与操作

文章目录 栈的基本概念 栈的实现 顺序栈 共享栈 链栈 栈的基本概念 栈的定义 栈(Stack)是只允许在一端进行插入或删除操作的线性表 相关术语 栈顶(Top)线性表允许进行插入或删除的那一端称之为栈顶栈底(Bottom&…

JAVASE基础(二)

这里写目录标题JAVASE基础11.科学计数法12.编码和字符集12.编译格式问题13.类型转换类型级别自动类型转换强制类型转换特殊情况14.final修饰符a.修饰变量b.修饰方法c.修饰类15.scanner使用16.两个数交换引入中间变量位运算数学数方法一数学计数方法二17.扩展赋值运算符&#xf…

递归算法_字符串反转_20230412

递归算法-字符串反转 前言 递归算法对解决重复的子问题非常有效,字符串反转也可以用递归算法加以解决,递归算法设计的关键是建立子问题和原问题之间的相关性,同时需要确立递归退出的条件;如果递归退出的条件无法确定&#xff0c…

【LeetCode: 面试题 17.13. 恢复空格 | 暴力递归=>记忆化搜索=>动态规划】

🚀 算法题 🚀 🌲 算法刷题专栏 | 面试必备算法 | 面试高频算法 🍀 🌲 越难的东西,越要努力坚持,因为它具有很高的价值,算法就是这样✨ 🌲 作者简介:硕风和炜,…

Redis安装和配置

目录本章重点Redis安装Redis启动和停止配置后台启动连接前的配置本章重点 主要掌握安装和启动了解redis的配置文件进行配置掌握Redis几种启动方式 Redis安装 下载 Redis官网 点击下载 解压 然后将下载好的压缩包上传到服务器,进行解压! tar zxvf 进行解压 编译 我们要进行编…

4.12每日一练

题目:给你两个 非空 的链表,表示两个非负的整数。它们每位数字都是按照 逆序 的方式存储的,并且每个节点只能存储 一位 数字。请你将两个数相加,并以相同形式返回一个表示和的链表。你可以假设除了数字 0 之外,这两个数…

学生信息管理系统【GUI/Swing+MySQL】(Java课设)

系统类型 Swing窗口类型Mysql数据库存储数据 使用范围 适合作为Java课设!!! 部署环境 jdk1.8Mysql8.0Idea或eclipsejdbc 运行效果 本系统源码地址:https://download.csdn.net/download/qq_50954361/87673902 更多系统资源库…

安全运营场景下的机器学习算法应用

观测到一个有意思的现象: 假设把安全划分为 基础安全 和 业务安全,PR类的议题中,会出现分级:基础安全领域,喜欢讲纵深防御,给出一个炫酷的架构图,然后各种技术关键字往上标;业务安全…

Doris集群的安装部署

目录 安装与部署 软硬件配置​ 1、机器选择 2、软件选择 3、环境信息修改和部署架构 4、安装部署Doris 5、启动FE 6、在FE节点启动MySQL客户端 7、在BE节点启动be 8、查看BE状态 8、查看FE状态是否正常 WEBUI 官方建议 安装与部署 该文档主要介绍了部署 Doris 所…

如何压缩Outlook数据文件大小

由于 Outlook 需要管理大量的电子邮件,Outlook 偶尔会出现问题是很正常的。 但是,如果你注意到 Outlook 打开或加载的时间过长,这可能是一个严重的问题。此外,你还可能面临其他问题,比如收件箱加载时间过长&#xff0…

WebWorker、ThreeJs的渲染和控制

在 ios16.4 版本中已经开始支持了 OffscreenCanvas ,那看样子,是时候再把Three做一波优化了 背景介绍 在之前的项目经验中,如果使用threejs加载比较大的3d场景,那么在创建 threejs 的对象和绘制的时候,会占用浏览器线…

认识C++《共、枚、指1》

目录 前言: 1.共用体的基本知识 2.匿名共用体 3.枚举 3.1设置枚举值 3.2枚举的应用场景 3.3枚举变量的取值范围 4.地址和自由存储空间 5.指针的思想 6.指针的声明和初始化 前言: 指针内容比较多,还需要再出一篇。久等了!!我看了我的…

数据库中的视图及三级模式结构

文章目录一、视图二、数据库三级模式结构一、视图 简单地说,视图可以看成是一个窗口,它所反映的是一个表或若干表的局部数据,可以简化查询语句。视图一经定义,用户就可以把它当作表一样来查询数据。 但视图和基本表不同&#xf…

Python算法设计 - Karatsuba乘法

版权声明:原创不易,本文禁止抄袭、转载,侵权必究! 目录一、Karatsuba 乘法二、算法思路三、Python算法实现四、作者Info一、Karatsuba 乘法 当你在纸上做两个数字的乘法时,一般我们都是用小时候学到的方法&#xff1a…

22.SSM-JdbcTemplate总结

目录 一、JdbcTemplate对象。 (1)Spring产生JdbcTemplate对象。 (2)JdbcTemplate常用操作。 (3)知识要点。 一、JdbcTemplate对象。 (1)Spring产生JdbcTemplate对象。 这个是Sp…

AIGC大模型时代下,该如何应用高性能计算PC集群打造游戏开发新模式?

ACT | SIM | ETC | FTG | RAC AVG | RPG | FPS | MUG | PUZ ACT、SIM、ETC、FTG、RAC、RTS、STG、AVG、RPG、FPS、MUG、PUZ、SLG、SPG等游戏类型,需要高性能的计算机来支持运行。为了满足这些游戏的需求,国内服务器厂商不断推出新的产品,采用…

定点数加减运算

定点数加减运算 文章目录定点数加减运算格式相同位宽相同但不同格式运算位宽不同的定点数运算1.转换为S5.10格式的相同位宽2.统一转换为S10.5格式的相同位宽定点数运算可直接通过处理器内置的整数单元实现格式相同 加减法就是对应二进制形式的有符号整数的加减运算 例如 2.71…

[Date structure]时间/空间复杂度

⭐作者介绍:大二本科网络工程专业在读,持续学习Java,努力输出优质文章 ⭐作者主页:逐梦苍穹 ⭐所属专栏:数据结构。数据结构专栏主要是在讲解原理的基础上拿Java实现,有时候有C/C代码。 ⭐如果觉得文章写的…

手写锚点,且随着滚动屏幕自动高亮

入上图效果 通过判断几个id对应的dom离滚动区域上方的高度跟滚动区域高度对比高亮锚点 <template><div v-loading"totalLoading" class"define-target-container"><el-radio-group v-model"ucatsType" class"ucats-setti…

AUTOSAR Gateway介绍

概述 熟悉整车电子架构的朋友们都知道,Gateway(网关)在整车网络架构中协调不同物理链路数据的交换,发挥着数据中枢作用。本文为大家介绍AUTOSAR架构中Gateway的应用方式。 在AUTOSAR架构中,Signal、Signal Group或者PDU从一个源总线接收可以发送到一个或相同或不同协议的总…