软件测试流程扫盲:V/W/H模型,测试左移测试右移

news2025/1/8 5:08:44

一、软件测试模型

(一)V模型

  • V模型是瀑布模型的一种改进
  • V模型标明了测试过程中的不同阶段

1.V模型每个测试阶段的测试内容

单元测试:类、函数
集成测试:接口
系统测试:前期测功能有没有满足需求,后期满足功能后还需要测性能、兼容性
验收测试:检查产品有无满足最终的需求
在这里插入图片描述

2.V模型的优缺点

优点
1.既有底层测试又有高层测试。
2.将开发阶段清楚的表现出来,便于控制开发的过程
缺点
1.容易让人误解为测试是在开发完成之后的一个阶段
2.由于它的顺序性,当编码完成之后,正式进入测试时,这时发现的一些bug可能不容易找到其根源,并且代码修改起来很困难。
3.如果需求变更较大,导致要重复变更需求、设计、编码、测试。返工量大

(二)W模型

  • W模型明确表示出了测试与开发的并行关系
  • W模型中测试伴随着整个软件开发周期,并且测试的对象不仅仅是程序,需求和设计同样要测试

在这里插入图片描述

1.W模型的优缺点

优点
1.将测试贯穿到整个软件的生命周期中,且除了代码要测试,需求、设计等都要测试
2.更早的介入到软件开发中,能尽早的发现缺陷进行修复
3.测试与开发独立起来,并与开发并行
缺点
1.无法支持迭代的开发模型
2.对有些项目,开发过程中根本没有文档产生,故W模型无法使用
3.对于需求和设计的测试技术要求很高,实践起来很困难

(三)H模型

  • 软件开发中需求、设计、编码等活动被分阶段执行,但是实践中,他们并不是完全串行的,它们之间更多时候是交叉进行的,更多的是迭代执行(迭代:开发到一半,测试过程中发现一个问题,因为这个问题又去改需求,然后跟着改设计重新编码)
  • 把测试活动完全独立出来,形成一个完全独立的流程,将测试准备活动和测试执行活动清晰地体现出来

1.H模型每个测试阶段的测试内容

测试准备:人员的配备,多长时间能把这个项目能测完,测哪些点测哪些模块
测试就绪点:测试准备到什么程度就可以执行测试(比如文档都得有啦、程序都得有啦)
测试执行:按照测试用例去测试我们的文档还有程序
在这里插入图片描述

2.H模型的优缺点

优点
1.软件测试完全独立,贯穿整个生命周期,且与其他流程并发进行
2.软件测试活动可以尽早准备、尽早执行,具有很强的灵活性
缺点
1.测试就绪点分析困难
2.对于整个项目组的人员要求非常高

二、软件测试流程

(一)传统测试流程

在这里插入图片描述
单元测试:类、函数
集成测试:接口
冒烟测试:软件的基本功能(电商app:下单→付款)
系统测试:前期测功能有没有满足需求,后期满足功能后还需要测性能、兼容性、安全性
回归测试:系统测试过程中发现的bug开发需要进行修改,回归①bug有没有改好②修改bug的影响功能③老功能能不能用(老功能也可能发现问题)→所有新功能的用例执行完了、老功能的用例回归完了
验收测试:检查产品有无满足最终的需求

(二)系统测试流程

在这里插入图片描述
测试计划:版本的测试时间、开发的提测时间、几个人去测试、用例谁去写、回归的范围是多少、协调谁去做、总结谁去做

(三)Bug管理流程

在这里插入图片描述

(四)测试左移和测试右移

1.测试左移

  • 左移是往测试之前的开发阶段移
  • 测试团队在软件开发周期早期就开始介入对代码进行测试
  • 从发现bug到预防bug

测试左移-质量保障手段

  • 代码评审(code review)
  • 代码审计:自动化工具,安全漏洞
  • 单元测试
  • 自动化冒烟测试:提供自动化冒烟测试脚本
  • 研发自测

2.测试右移

  • 右移是往发布之后移
  • 产品上线后进行线上监控

测试右移-线上监控

  • 闭环的线上问题反馈-检查-解决-更新流程
  • 更便捷的日志查看、回传服务
  • 丰富有效的log,便于问题的快速定位
  • 丰富的监控指标(例如业务异常点指标)
  • 业务监控(例如短信有没有成功发送到等)
  • 关键指标每日监控(服务器指标)
  • 生产数据监控(警报,异常数据)

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

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

相关文章

数据可视化分析,近5年电视机全球出货量和中国产量

随着科技的不断进步,电视机已经不再只是用来看电视节目的设备,而是成为了家庭娱乐的中心,提供了令人难以置信的视觉体验。随着4K和8K技术的引入,我们能够欣赏到前所未有的清晰度和细节还原能力。无论是观看电影、体育比赛还是玩游…

哈工大计算机网课程络网络层协议详解之:Internet网络路由协议详解(RIP、OSPF)

文章目录 RIP协议RIP链路失效、恢复问题RIP路由表的处理 OSPF协议分层的OSPF主干路由器 之前我们也介绍了,作为我们现在广泛使用的Internet网络来说,采用的路由策略是层次化路由策略。 即将不同区域、组织的网络划分成一个个自治系统,在自治系…

Android Studio实现内容丰富的安卓志愿者平台

如需源码可以添加q-------3290510686,也有演示视频演示具体功能,源码不免费,尊重创作,尊重劳动。 项目编号122 1.开发环境 android stuido jdk1.8 eclipse mysql tomcat 2.功能介绍 安卓端: 1.注册登录 2.查看公告 3.…

LUT查找表

目录 1、查找表原理 2、LUT查找表函数 1、查找表原理 2、LUT查找表函数 #include <iostream> #include <fstream> #include <opencv2/opencv.hpp>using namespace std; using namespace cv;int main() {//LUT查找表第一层uchar lutFirst[256];for (int i 0…

MySQL - 第14节 - MySQL使用C语言连接

1.引入库 要使用C语言连接MySQL&#xff0c;需要使用MySQL官网提供的库。 1.1.下载库文件 下载库文件&#xff1a; 首先&#xff0c;进入MySQL官网&#xff0c;选择DEVELOPER ZONE&#xff08;开发人员专区&#xff09;&#xff0c;然后点击MySQL Downloads。如下&#xff1a; …

MySQL学习基础篇(四)---运算符

MySQL学习基础篇(四)—运算符 1 算数运算符 1.1加法与减法运算符 结论&#xff1a; 一个整数类型的值对整数进行加法和减法操作&#xff0c;结果还是一个整数&#xff1b;一个整数类型的值对浮点数进行加法和减法操作&#xff0c;结果是一个浮点数&#xff1b;加法和减法的优先…

Hive详解

一 Hive基本概念 1 Hive简介 学习目标 - 了解什么是Hive - 了解为什么使用Hive1.1 什么是 Hive Hive 由 Facebook 实现并开源&#xff0c;是基于 Hadoop 的一个数据仓库工具&#xff0c;可以将结构化的数据映射为一张数据库表 &#xff0c;并提供 HQL(Hive SQL)查询功能&…

华为云CodeArts Check:带你掌握代码检查技巧,优化代码质量!

HDC期间可参与华为开发者大会Check新人抽奖活动&#xff0c;活动链接在文末。福利多多&#xff0c;快来参与&#xff01; 本文作为华为云CodeArts Check代码检查服务的开箱操作指导文档&#xff0c;会分为如下五个维度进行介绍&#xff1a;产品介绍、前期准备、开通CodeArts软件…

ModaHub魔搭社区:向量数据库Milvus Lite 的优势和安装教程

想要体验开源向量数据库MIlvus&#xff0c;缺少专业的工程师团队作为支撑&#xff1f;Milvus 安装环境受限&#xff1f; 别担心&#xff0c;轻量版 Milvus 来啦&#xff01; 有用户反馈刚开始接触 Milvus 或者想要在 Notebook 中进行快速实验时&#xff0c;安装或部署 Milvus …

泛娱乐出海赛道火热,茄子科技如何赋能企业出海破局?

全球疫情的反复影响了用户的生活、工作习惯&#xff0c;更多泛娱乐的用户习惯向“线上化”迁移。当前&#xff0c;随着技术的迭代和行业走向成熟&#xff0c;泛娱乐出海在产品、技术和市场方面也出现了全新的发展趋势。然而&#xff0c;泛娱乐出海者们想要在海外市场去开疆拓域…

【项目部署】NGINX原生部署前端

如有拼错的单词感谢提醒~ 一.准备工作 为了方便文件的管理&#xff0c;我们先在服务器上创建一个专门存放项目的目录。 # 1.查看当前所在目录 pwd # 1.1 可以切换到根目录管理 cd /root # 2.创建一个专门存放项目的文件夹 mkdir services # 3.可以查看我们创建的文件夹 ls # …

【按位建线段树】CF242 E

Problem - 242E - Codeforces 题意&#xff1a; 思路&#xff1a; 因为涉及到位运算操作&#xff0c;所以要在01矩阵内进行维护 每行都代表一个数&#xff0c;因此区间操作就是在两行之间的01矩阵操作 我们可以造20棵线段树&#xff0c;其中每一列01序列都对应着一棵线段树…

【Squid二】使用squid和nginx服务搭建反向缓存代理服务

使用squid和nginx服务搭建反向缓存代理服务 1.反向代理1.1 反向代理概述1.2 反向代理工作机制 2.搭建squid反向代理服务2.1 Nginx服务器端配置2.2 squid反向代理服务器配置 3.搭建nginx反向缓存代理服务3.1 nginx反向缓存代理服务配置3.2 nginx服务端配置3.3 客户端验证访问 参…

(万字文)快速入门uniapp——从环境搭建到项目实践

&#x1f642;博主&#xff1a;小猫娃来啦 &#x1f642;文章核心&#xff1a;快速入门uniapp——从环境搭建到项目实践 文章目录 初步介绍UniApp开发环境搭建下载和安装UniApp开发工具&#xff1a;创建新项目&#xff08;HBuilderX&#xff09;开发工具界面介绍 UniApp基础知识…

数据战略的理解与实施指南

虽然大多数公司都认识到他们的数据是一项战略资产&#xff0c;但许多公司并没有充分利用它来取得进展。在本文中&#xff0c;我们讨论了成功数据战略的关键要素&#xff0c;这些要素将帮助您基于数据分析而不是直觉做出明智的决策。 尽管公司在数据和分析计划方面的投资比以往任…

2021 RoboCom 世界机器人开发者大赛-高职组(初赛)

编程题得分&#xff1a;100 总分&#xff1a;100 目录 7-1 机器人打招呼 (5分) 输入格式&#xff1a; 输出格式&#xff1a; 输入样例&#xff1a; 输出样例&#xff1a; 7-2 人脸识别 (10分) 输入格式&#xff1a; 输出格式&#xff1a; 输入样例 1&#xff1a; 输…

SAP VC 可配置物料超级BOM简介

`1、可配置物料(Configurable Material)是SAP系统中PP模块一个比较高级的功能。在有些业务中比如:汽车、笔记本、电脑、电梯等产品中,其中组成产品的型号个框架是确认的 ,但是框架内部的BOM是可变的,在客户下销售订单的时候,选取对应的组件 ,让后通过MRP的计算优生产线…

【机器学习】支持向量机(下)

支持向量机&#xff08;下&#xff09; 目录 八、支持向量机的求解实例九、核函数1、核函数的引入2、核函数的示例 十、软间隔1、何为软间隔2、引入软间隔后的目标方程 十一、正则化十二、关于支持向量机的分类十三、数据标准化的影响【机器学习】支持向量机&#xff08;上&…

网络协议与攻击模拟-15-DNS协议

DNS 协议 1、了解域名结构 2、 DNS 查询过程 3、在 Windows server 上部署 DNS 4、分析流量 实施 DNS 欺骗 再分析 一、 DNS 1、概念 ● DNS ( domain name system &#xff09;域名系统&#xff0c;作为将域名的 IP 地址的相互映射关系存放在一个分布式的数据库&#xff0…

【开源项目】智慧仓储~某东数字孪生智慧仓储——开源工程及源码

某东大型仓储工程及源码免费赠送&#xff0c;领先行业智能仓储解决方案&#xff01; 项目介绍 数字孪生技术为仓储管理带来革命性的突破。通过数字孪生的应用&#xff0c;实现智能化的仓储管理&#xff0c;提供准确、高效的仓库操作与分析。 利用数字孪生技术&#xff0c;将数据…