当前位置: 首页 > news >正文

软件测试 - 常见的开发模型和测试模型

1.瀑布模型

优点

强调开发的阶段性, 强调早期计划及需求调查, 强调产品测试;

缺点

1. 由于瀑布模型是一种线型结构的模型, 也就意味着前一个阶段结束, 后一个阶段才能开始, 这就导致了风险往往会迟至后期的测试阶段才显露, 因而失去了及早纠正的机会.
2. 瀑布模型中测试被后置, 导致测试不充分, 缺陷直接暴露给用户, 不能很好的迎接变化.

适用场景

需求固定的小型项目

2. 螺旋模型

螺旋模型是在瀑布模型额基础上增加了风险分析, 生成新的原型.

特点

各个结点引入风险分析, 原型, 来降低可能存在的风险

缺点

1. 瀑布模型增加了风险分析阶段, 有一定的耗时耗力
2. 成本高, 团队需要耗费一定的资金和时间去招聘风险分析人才.

适用场景

需求不确定, 变化的可能性很大的大型项目

3 增量模型和迭代模型

优点

产品可以在较短时间内快速多频次的交付.

增量模型

将项目进行模块化, 使其每个模块都能够进行独立开发和上线.
优势 : 产品能够在较短的时间内尽快的交付软件给用户去使用.

迭代模型

假如一个产品包含 5 个功能 A,B,C,D,E, 迭代模型会先完成这个5 个功能的基础版本, 然后再经历一期一期的迭代优化, 直到这 5 个功能都非常的成熟.

4. 敏捷模型

《敏捷宣言》

1. 个体与交互重于过程和工具 --- 强调团队内部人员尽可能的进行高效的沟通
2. 可用的软件重于完备的文档
3. 客户协作重于合同谈判
4. 响应变化重于遵循计划

敏捷模型的特点 : 轻流程, 轻文档, 重目标, 重产出

敏捷开发的方式有很多种, 其中 scrum 是比较流行的一种.

2.1 scrum

了解scrum 中的三个重要角色五个重要会议

三个角色

产品经理 : 负责整理用户需求, 定义其商业价值, 对其进行排序, 制定发布计划, 对产品负责.
项目经理 : 负责召开各种会议, 协调项目, 为研发团队服务.
研发团队 : 由不同技能的成员组成, 通过紧密协同, 完成每一次迭代的目标, 交付产品.

五个重要会议

会议1 ->需求发布会议 : 确定本次迭代要实现的需求
会议2 -> 迭代计划会议 : 将需求拆分成一个个任务, 明确每个任务对应的责任人, 初步评估工时.
会议 3 -> 每日会议 : 会议中每个研发团队成员需要回答三个问题
1. 昨天做了什么 --> 及时的, 实时的知道研发团队的工作进度, 已经完成了什么任务.
2. 今天要做什么 --> 重目标.
3. 遇到了什么问题 -->研发团队针对你这个问题给出一个合理的额建议, 尽快的解决问题.
会议 4 -> 演示会议, 产物 : 用户的需求, 然后放入需求池中, 为下一个周期提供新的需求.
会议5 -> 回顾会议.

5. 软件测试V模型

V 模型的特点

明确了测试有不同的类型, 而且每个测试类型和前期的开发工作之间有对应关系

缺陷 : 测试后置

6. 软件测试W模型

W 模型的特点

测试从一开始就介入 (软件测试贯穿于软件的整个生命周期) , 有利于尽早的全面的发现问题.

缺陷

1. 开发和测试虽然是同步的, 但是仍然存在 着前后的线性关系.
2. 不支持敏捷模型.

相关文章:

软件测试 - 常见的开发模型和测试模型

1.瀑布模型优点强调开发的阶段性, 强调早期计划及需求调查, 强调产品测试;缺点1. 由于瀑布模型是一种线型结构的模型, 也就意味着前一个阶段结束, 后一个阶段才能开始, 这就导致了风险往往会迟至后期的测试阶段才显露, 因而失去了及早纠正的机会.2. 瀑布模型中测试被后置, 导致…...

从零开始的机械臂yolov5抓取gazebo仿真(四)

Moveit与Gazebo联合仿真 上一篇博客已经将moveit!配置完毕,然而想要让moveit!控制gazebo中的机械臂,还需要进行一些接口的配置。现在我们有的功能包为sunday_description、sunday_moveit_config这两个功能包。且已经配置好xacro文件,本篇内容…...

C++修炼之筑基期第一层——认识类与对象

文章目录🌷专栏导读🌷什么是面向对象?🌷类的引入🌷什么是类🌷类的定义方式🌷类的访问限定符与封装🌺访问限定符🌺封装🌷类的作用域🌷类的实例化&a…...

IT 运营监控工具

在技术复杂性日益增加、业务竞争激烈的挑战以及消费者对服务中断接受度降低的世界中,IT 运营效率已成为增长、利润和成功的关键。IT 宕机的影响在几十年前威胁较小,现在意味着价值数百万美元的损失,有时甚至会损失各种规模的组织的业务和声誉…...

java线程之Thread类的基本用法

Thread类的基本用法1. Thread类的构造方法2. Thread的几个常见属性常见属性线程中断等待一个线程小鱼在上一篇博客详细的讲解了如何创建线程,java使用Thread类来创建多线程,但是对于好多没有相关经验的人来说,比较不容易理解的地方在于操作系统调度的执行过程. 我们通过下面代码…...

【js】多分支语句练习(2)

个人名片: 😊作者简介:一名大一在校生,web前端开发专业 🤡 个人主页:python学不会123 🐼座右铭:懒惰受到的惩罚不仅仅是自己的失败,还有别人的成功。 🎅**学习…...

Redis与MySQL的双写一致性问题

Redis与MySQL的双写一致性问题更新缓存? 删除缓存?先更新缓存再更新数据库先更新数据库,再更新缓存先删除缓存再更新数据库先更新数据库,再删除缓存解决方案1. 重试2. 异步重试2.1 使用消息队列实现重试2.2 Binlog实现异步重试删除…...

Java基础:笔试题

文章目录Java 基础题目1. 如下代码输出什么?2. 当输入为2的时候返回值是多少?3. 如下代码输出值为多少?4. 给出一个排序好的数组:{1,2,2,3,4,5,6,7,8,9} 和一个数,求数组中连续元素的和等于所给数的子数组解析第一题第二题第三题第四题方案…...

spring三级缓存以及@Async产生循环引用

spring三级缓存以及Async产生循环引用spring三级缓存介绍三级缓存解除循环引用原理源码对应1、获取A,从三级缓存中获取,没有获取到2、构造A,将A置入三级缓存构造A(创建A实例)置入缓存3、注入属性,构造B扫描缓存实例的相关信息注入…...

【洛谷刷题】蓝桥杯专题突破-深度优先搜索-dfs(5)

目录 写在前面: 题目:P2036 [COCI2008-2009#2] PERKET - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 题目描述: 输入格式: 输出格式: 输入样例: 输出样例: 解题思路: 代码…...

【Unity3D】Unity3D中在创建完项目后自动创建文件夹列表

推荐阅读 CSDN主页GitHub开源地址Unity3D插件分享简书地址我的个人博客 大家好,我是佛系工程师☆恬静的小魔龙☆,不定时更新Unity开发技巧,觉得有用记得一键三连哦。 一、前言 随着项目开发的体量增大,要导入大量的素材、UI、模…...

如何设计一个锂电池充电电路(TP4056)

这个是个单节18650锂电池的充电模块,这个是个18650的锂电池,18指的是它的直径是18mm,65指的是它的高度为65mm。这个18650电池的标称电压是3.7V,电池充满时电压为4.2V,一般电池电压越高也就代表它所剩的电量越大。这种锂…...

Spark了解

目录 1 概述 2 发展 3 Spark和Hadoop 4 Spark核心模块 1 概述 Apache Spark是一个快速、通用、可扩展的分布式计算系统,最初由加州大学伯克利分校的AMPLab开发。 Spark可以处理大规模数据处理任务,包括批处理、迭代式算法、交互式查询和流处理等。Spa…...

c++STL急急急

文章目录cSTL急急急vector头文件扩容过程用法:size/emptyclear迭代器begin/endfront/backpush_back() 和 pop_back()queue头文件用法循环队列 queue用法优先队列 priority_queue用法stack头文件deque头文件deque中控器:用法set头文件用法迭代器begin/end…...

【C++学习】模板进阶——非类型模板参数 | 模板的特化 | 分离编译

🐱作者:一只大喵咪1201 🐱专栏:《C学习》 🔥格言:你只管努力,剩下的交给时间! 模板我们之前一直都在使用,尤其是在模拟STL容器的时候,可以说,模板…...

【C++】C++11新特性——可变参数模板|function|bind

文章目录一、可变参数模板1.1 可变参数的函数模板1.2 递归函数方式展开参数包1.3 逗号表达式展开参数包1.4 empalce相关接口函数二、包装器function2.1 function用法2.2 例题:逆波兰表达式求值2.3 验证三、绑定函数bind3.1 调整参数顺序3.2 固定绑定参数一、可变参数…...

ssm框架之spring:浅聊事务--JdbcTemplate

简介 JdbcTemplate 是 Spring 对 JDBC 的封装,目的是使JDBC更加易于使用,JdbcTemplate是Spring的一部分。JdbcTemplate 处理了资源的建立和释放,它帮助我们避免一些常见的错误,比如忘了总要关闭连接。他运行核心的JDBC工作流&…...

盘点Python那些简单实用的第三方库

文章目录前言关于本文使用 pip 命令下载第三方库1、phone 库(获取手机号码信息)2、geoip2 库(IP 检测功能)3、freegames 库(免费小游戏)4、jionlp 库(解析地址信息)5、pyqrcode 库&a…...

leetCode热题21-26 解题代码,调试代码和思路

前言 本文属于特定的六道题目题解和调试代码。 1 ✔ [160]相交链表 Easy 2023-03-17 171 2 ✔ [54]螺旋矩阵 Medium 2023-03-17 169 3 ✔ [23]合并K个排序链表 Hard 2022-12-08 158 4 ✔ [92]反转链表 II Medium 2023-03-01 155 5 ✔ [415]字符串相加 Easy 2023-03-14 150 6 …...

ChatGPT推出第四代GPT-4!不仅能聊天,还可以图片创作!

3月15日凌晨,OpenAI震撼发布了多模态预训练大模型 GPT-4。 根据官网发布的通告可以知道,GPT-4 实现了以下几个方面的飞跃式提升:强大的AI创作识图能力;文字输入限制提升至 2.5 万字;回答准确性显著提高;能够…...

汇智信科-机场数字孪生系统

机场数字孪生系统以数字化孪生技术构建机场全要素虚拟映射,精准还原机场、跑道、塔台等设施及飞机运行状态,支持多维度动态监测与可视化管控;通过模拟飞机调度、跑道滑行等全流程作业场景,覆盖机场多角色业务协同,同时…...

Comsol锂离子电池热管理模型

Comsol锂离子电池热管理模型 电化学热耦合模型: 风冷换热方形电池 绝热软包电池 石蜡相变换热圆柱电池模型 21700圆柱电池热失控模型(附带说明文档)一、引言随着电动汽车、储能系统等领域的快速发展,锂离子电池的应用越来越广泛。…...

IDEA插件MyBatisX实战:3分钟搞定SpringBoot项目CRUD代码生成

MyBatisX插件全流程实战:SpringBoot项目CRUD代码生成效率革命 在快节奏的企业级开发中,重复编写基础CRUD代码就像在键盘上跳机械舞——动作标准却毫无新意。当项目包含20张以上数据表时,手动创建Entity、Mapper、Service等层级代码会消耗开发…...

28-模块四-AI代码审核实战 第28讲-代码质量评分体系 - 可维护性 可读性 可测试性的量化指标

本讲目标:理解「量化指标」如何把主观感受变成可治理信号;掌握从 Python AST 计算圈复杂度与认知复杂度的基本方法;实现可配置权重的 QualityScorer、历史趋势与团队基准对比接口;输出 JSON 与 Markdown 双语报告,嵌入 CodeSentinel 审核结论。本讲强调可解释:每个分数都…...

OFA-COCO蒸馏版部署教程:Windows WSL2环境下PyTorch服务调试全流程

OFA-COCO蒸馏版部署教程:Windows WSL2环境下PyTorch服务调试全流程 1. 引言:为什么选择OFA图像描述模型? 你有没有遇到过这样的场景?手头有一堆图片,需要为它们配上文字说明,一张张手动写描述&#xff0c…...

机器学习在医疗诊断中的应用

机器学习在医疗诊断中的应用 【免费下载链接】Zettlr Your One-Stop Publication Workbench 项目地址: https://gitcode.com/GitHub_Trending/ze/Zettlr 背景 [[医疗诊断现状分析]]显示当前诊断方法的局限性。 方法 基于[[机器学习基础概念]]中的监督学习方法。 应用…...

汽车动力性能计算工具插件:一键测算电机需求与整车性能,工程师专属轻量级辅助软件

温馨提示:文末有联系方式插件核心功能亮点 本款汽车动力性系统专用计算小工具,可精准推演电机功率与扭矩需求,同步输出整车加速性能、最大爬坡度、最高稳定车速等关键动力参数,覆盖常规工况与典型驱动场景,满足前期方案…...

Realtek 8852AE Wi-Fi 6驱动深度解析与实战指南

Realtek 8852AE Wi-Fi 6驱动深度解析与实战指南 【免费下载链接】rtw89 Driver for Realtek 8852AE, an 802.11ax device 项目地址: https://gitcode.com/gh_mirrors/rt/rtw89 问题引入:Wi-Fi 6网卡在Linux环境下的兼容性挑战 当您的Linux系统无法识别Realt…...

DeepSeek-Coder-V2-Lite-Instruct评估指标详解:代码准确率、效率与创新性

DeepSeek-Coder-V2-Lite-Instruct评估指标详解:代码准确率、效率与创新性 【免费下载链接】DeepSeek-Coder-V2-Lite-Instruct 开源代码智能利器——DeepSeek-Coder-V2,性能比肩GPT4-Turbo,全面支持338种编程语言,128K超长上下文&a…...

基于DeepSeek的本地部署AI智能体:锁脸功能实现完整方案

基于DeepSeek的本地部署AI智能体:锁脸功能实现完整方案 一、项目概述与架构设计 1.1 任务目标 开发一个具有锁脸功能的AI智能体,能够: 完全本地部署,无需依赖云端服务 锁定智能体的角色设定、人格特征和对话风格 支持多轮对话记忆 提供RESTful API接口 保证角色设定在任…...