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

更详细的软件测试理论基础:流程,开发、测试模型,测试分类,测试用例及其设计方法,缺陷

文章目录

    • 一、测试流程
    • 二、开发模型
      • 1、 瀑布模型
      • 2、增量模型
      • 3、快速模型
      • 4、其他
    • 三、测试模型
      • 1、V模型
      • 2、W模型
    • 四、测试分类
    • 五、测试用例 test case
    • 六、测试用例设计方法
      • 1、等价类划分法
      • 2、边界值分析法
      • 3、因果图法
      • 4、判定表法
      • 5、正交法
      • 6、场景法
      • 7、流程分析法
      • 8、错误推测法
      • 方法选取
    • 七、缺陷 BUG
      • 1、基本概念
      • 2、缺陷报告
      • 3、缺陷的状态
      • 4、缺陷的处理流程
      • 5、缺陷的优先级
      • 6、缺陷的表现形式

一、测试流程

1、需求分析
阅读需求文档、产品文档、产品详细设计说明书、分析需求的点、参与需求评审
快速熟悉项目2、制定测试计划和测试方案
测试计划:测试整个项目的总体的规划
测试的范围、进度的安排、人力物力的安排、整体的测试策略、风险的评估测试方案:
被测试的目标、选取什么样的测试工具、测试的方法、测试的重点3、设计测试用例
边界值、等价类4、执行测试用例5、评估阶段   测试报告

二、开发模型

1、 瀑布模型

在这里插入图片描述
特点:
1、阶段间具有顺序性和依赖性
2、质量保证的观点
3、推迟实现

瀑布模型是文档驱动的模型,遵守这个约束可使软件维护变得比较容易一些,从而显著降低软件预算

2、增量模型

在这里插入图片描述
把瀑布模型的顺序特征与快速原型法的迭代特征相结合,将软件看作一系列相互联系的增量,在开发过程的各次迭代中,每次完成其中的一个增量

3、快速模型

在这里插入图片描述在这里插入图片描述

4、其他

螺旋开发模型(了解)在这里插入图片描述
迭代开发模型(了解)

敏捷开发模型(了解)

三、测试模型

1、V模型

在这里插入图片描述
优点:每一个阶段都清晰明了、便于控制开发的每一个过程,既包含单元测试又包含系统测试

缺点:测试介入的较晚,对于前期的一些缺陷无从发现和修改,测试和开发串行,总用时较长

2、W模型

在这里插入图片描述
优点:测试伴随软件的整个生命周期,例如,在需求分析结束后就可以进行需求分析测试、测试于开发是并行独立进行

缺点:对需求和测试技术要求高,适用于大中型企业

四、测试分类

测试(开发)阶段:
1、单元测试:
编码完成前/后
模块、类、函数、方法
开发人员、白盒测试人员2、集成测试:
单元测试完成以后
模块已经完成编码
模块和模块之间内容
开发人员和白盒测试人员3、系统测试:
集成测试完成之后
程序、软件、app、系统、网址、项目
整体测试
开发人员、白盒黑盒测试人员测试4、验收测试:
系统测试之后
整个的系统α测试、β测试
媒体、用户
是否覆盖源码:
1、黑盒测试:没有覆盖源码
功能测试(UI界面测试、业务功能测试、文档测试、易用性测试、安装卸载测试、兼容器测试)
性能测试(一般性能测试:相应时间、对资源的利用,稳定性测试、负载测试、压力测试)2、灰盒测试
关心输入输出,考虑程序运行的状态3、白盒测试:有覆盖源码
语句覆盖、判断覆盖、条件覆盖、路径覆盖
是否运行:
1、静态测试
测试程序的结构、程序过程、接口是否正常、代码的风格是否符合标准2、动态测试是否自动化:
1、手工测试
2、自动化测试地域测试:
1、本地化测试
2、国际化测试其他测试:
1、回归测试
2、冒烟测试:硬件测试词语,主要测试基本功能。模块是否能正常运行
3、随机测试:monkey测试
4、探索测试

五、测试用例 test case

是为了某个特殊目标而编制的一组测试输入、执行条件以及预期结果,以便测试某个程序路径或核实是否满足某个特定需求

特性:有效性、可复用性、易组织性、可评估性、可管理性

要素:用例编号、用例标题、模块/项目、优先级、前置条件、测试步骤、测试数据、预期结果

六、测试用例设计方法

1、等价类划分法

在这里插入图片描述在这里插入图片描述
案例:
在这里插入图片描述
在这里插入图片描述

2、边界值分析法

在这里插入图片描述在这里插入图片描述

3、因果图法

在这里插入图片描述

4、判定表法

因果图的实例

在这里插入图片描述在这里插入图片描述

5、正交法

研究多因素多水平
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述在这里插入图片描述

6、场景法

一般用于冒烟测试

在这里插入图片描述

7、流程分析法

在这里插入图片描述

8、错误推测法

在这里插入图片描述

方法选取

1.先关注主要功能也业务流程、业务逻辑是否正确实现,考虑场景法
2.需要输入数据的地方,考虑等价类划分法
3.在任何情况行都使用边界值法
4.如果程序的功能中包含输入条件的组合情况,则选取因果图和判定表法
5.对于配置类软件,需要考虑参数的组合情况,考虑使用正交排列法
6.对照程序逻辑,如果发现没有达到要求的覆盖标准。适当补充更多的测试用例
7.采用错误推断法,追加其他测试用例

七、缺陷 BUG

1、基本概念

在这里插入图片描述
在这里插入图片描述在这里插入图片描述

2、缺陷报告

在这里插入图片描述

3、缺陷的状态

在这里插入图片描述

4、缺陷的处理流程

在这里插入图片描述

5、缺陷的优先级

在这里插入图片描述

6、缺陷的表现形式

在这里插入图片描述

相关文章:

更详细的软件测试理论基础:流程,开发、测试模型,测试分类,测试用例及其设计方法,缺陷

文章目录 一、测试流程二、开发模型1、 瀑布模型2、增量模型3、快速模型4、其他 三、测试模型1、V模型2、W模型 四、测试分类五、测试用例 test case六、测试用例设计方法1、等价类划分法2、边界值分析法3、因果图法4、判定表法5、正交法6、场景法7、流程分析法8、错误推测法方…...

input css padding

这样控件会跑出外套控件在HTML JSP里面是经常出现的。但有些外国adobe的as控件不存在这种情况,这是因为内层控件定义的时候不能超出外层控件的范围。 修改下:去掉原来css padding,然后加上宽度和高度...

如何打印 springboot 框架中 接收请求的日志

在 Spring Boot 框架中,您可以使用日志来记录接收请求和发送响应的详细信息。Spring Boot 默认使用 SLF4J(Simple Logging Facade for Java)作为日志抽象层,并支持多种日志实现,如 Logback、Log4j2 等。以下是一种常见…...

JVM的内存区域划分

JVM即Java虚拟机,是Java实现跨平台交互能力的核心,Java编译后的.class文件,就是通过虚拟机和操作系统进行交互的; 常见的虚拟机有:JVM、VMwave、Virtual Box,目前最主流使用的JVM是HotSpot VM;…...

YOLOv9有效改进|使用动态蛇形卷积Dynamic Snake Convolution

专栏介绍:YOLOv9改进系列 | 包含深度学习最新创新,主力高效涨点!!! 一、改进点介绍 使用ICCV2023中的动态蛇形卷积替换YOLOv9网络中的Conv模块。 二、Dynamic Snake Convolution模块详解 2.1 模块简介 应用场景&#x…...

设计模式学习笔记 - 设计原则 - 1.单一职责原则

前言 前面我们提到过 SOLID 原则,实际上 SOLID 由 5 个设计原则组成,分别是:单一职责原则、开闭原则、里氏替换原则、接口隔离原则和依赖反转原则。它们分别对应 SLOID 中的 S、O、L、I、D 这 5 个英文字母。 今天来学习下 SOLID 原则中的第…...

飞天使-学以致用-devops知识点4-SpringBoot项目CICD实现(实验失败,了解大概流程)

文章目录 代码准备创建jenkins 任务测试推送使用项目里面的jenkinsfile 进行升级操作 文字版本流程项目构建 代码准备 推送代码到gitlab 代码去叩叮狼教育找 k8s 创建jenkins 任务 创建一个k8s-cicd-demo 流水线任务 将jenkins 里面构建时候的地址还有token, 给到…...

使用HTML5画布(Canvas)模拟图层(Layers)效果

使用HTML5画布(Canvas)模拟图层(Layers)效果 在图形处理和计算机图形学中,图层(Layers)是指将图像分成不同的可独立编辑、组合和控制的部分的技术或概念。每个图层都可以包含不同的图形元素、效…...

违背祖训,微软骚操作强制用户更新至 Win 11 23H2

话说,大伙儿有让 Windows 操作系统一直保持最新版习惯吗? 根据以往惯例,Windows 系统更新是个比较玄学的存在,谁也不能保证随手更新后会不会出现什么奇葩 Bug。 因此对于不少同学来说,Windows 更新到一个稳定版本后&a…...

MISRA C++ 2023指南:您需要了解的一切

MISRA C 2023可以帮助使用现代C语言的组织开发安全关键型软件。使用新的MISRA标准,开发人员可以通过确保和记录其软件应用程序的MISRA合规性,满足IEC 6108或ISO 26262等功能安全标准给出的静态分析要求。 什么是MISRA C2023? 以便使用C17进行安全可靠…...

Vue:【亲测可用】父组件数组包对象,传给子组件对象,子组件修改属性(字段)后,父组件没有更新

场景&#xff1a;vue中父组件数组包对象&#xff0c;传给子组件对象&#xff0c;子组件修改属性&#xff08;字段&#xff09;后&#xff0c;父组件没有更新 代码&#xff1a; # 父组件 <div v-for"(object, name, index) in arr" :key"index"><…...

hbase学习十:客户端实现与Meta表解析

1、客户端实现 hbase社区的客户端一般是java客户端。 HBase也支持Shell交互式客户端。Shell客户端实质是用JRuby(用Java编写的Ruby解释器,方便Ruby脚本跑在JVM虚拟机上)脚本调用官方HBase客户端来实现的。因此,各种客户端的核心实现都在社区Java版本客户端上。 客户端访…...

《OpenScene: 3D Scene Understanding with Open Vocabularies》阅读笔记1

传统的3D场景理解方法依赖于带标签的3D数据集,用于训练一个模型以进行单一任务的监督学习。我们提出了OpenScene,一种替代方法,其中模型在CLIP特征空间中预测与文本和图像像素共同嵌入的3D场景点的密集特征。这种零样本方法实现了与任务无关的训练和开放词汇查询。例如,为了…...

数据结构 - Trie树(字符串统计、最大异或对)

文章目录 前言Part 1&#xff1a;Trie字符串统计1.题目描述输入格式输出格式数据范围输入样例输出样例 2.算法 Part 2&#xff1a;最大异或对1.题目描述输入格式输出格式数据范围输入样例输出样例 2.算法 前言 本篇博客将介绍Trie树的常见应用&#xff0c;包括&#xff1a;Trie…...

2. vue 工程创建

1. 基于 vite创建 官方文档: https://v3.cn.vuejs.org/guide/installation.html#vite vite官网: https://vitejs.cn 使用vite创建的优势&#xff1a; 开发环境中&#xff0c;无需打包操作&#xff0c;可快速的冷启动。轻量快速的热重载(HMR)。真正的按需编译&#xff0c;不再…...

2024绿色能源、城市规划与环境国际会议(ICGESCE 2024)

2024绿色能源、城市规划与环境国际会议(ICGESCE 2024) 一、【会议简介】 随着全球气候变化和环境问题日益严重&#xff0c;绿色能源和可持续发展已成为全球关注的焦点。本次会议旨在汇聚全球在绿色能源、城市规划与环境领域的专家、学者和实践者&#xff0c;共同探讨和分享关于…...

0门槛电子画册制作

​电子画册制作&#xff0c;门槛低至零&#xff0c;也可以制作出如此精美的电子画册吗&#xff1f;别担心&#xff0c;这个问题早已解决&#xff0c;今天就教你如何0门槛制作电子画册。 选择合适的企业宣传册制作软件&#xff0c;如FLBOOK在线制作电子杂志平台等。这个工具提供…...

C语言----冒泡排序进阶

冒泡排序大家应该到写过吧。但大家可能知道到的冒泡排序有两种方法。而我呢&#xff0c;最近学习到了另外一种方法&#xff0c;现在知道三种方法了。所以想与大家分享一下。但是缺点是第三种是第二种的自实现版。第一种就是我们平常写的普通冒泡排序。第二种就是qsort。第三种就…...

【机器学习】实验5,AAAI 会议论文聚类分析

本次实验以AAAI 2014会议论文数据为基础&#xff0c;要求实现或调用无监督聚类算法&#xff0c;了解聚类方法。 任务介绍 每年国际上召开的大大小小学术会议不计其数&#xff0c;发表了非常多的论文。在计算机领域的一些大型学术会议上&#xff0c;一次就可以发表涉及各个方向…...

安卓虚拟机ART和Dalvik

目录 一、JVM和Dalvik1.1 基于栈的虚拟机字节码指令执行过程 1.2 基于寄存器的虚拟机 二、ART与Dalvikdex2aotAndroid N的运作方式 三、总结 一、JVM和Dalvik Android应用程序运行在Dalvik/ART虚拟机&#xff0c;并且每一个应用程序对应有一个单独的Dalvik虚拟机实例。 Dalvik…...

直播预告 | 别再从零写标准了!——AI帮你5分钟生成标准草案

直播预告写一份标准草案&#xff0c;通常要多久&#xff1f;查模板、搭框架、写内容、调格式、改编号……熟悉流程的人都知道&#xff0c;哪怕是一份相对简单的企业标准&#xff0c;从空白文档到初稿完成&#xff0c;少则半天&#xff0c;多则数天。本期直播&#xff0c;我们将…...

广州邮科选型指南:挑选可调电源必须关注的四个核心参数

在电子工程师的工作台上&#xff0c;有一种设备兼具了灵活性与智能保护——它就是可调稳压恒流开关电源。这种电源不仅是供电工具&#xff0c;更像是懂得自我保护的"智能能源管家"。它如何同时实现稳压与恒流&#xff1f;传统电源往往只能固定输出&#xff0c;而这类…...

Python如何实现定时异步任务_结合asyncio与loop.call_later调用

asyncio.call_later不能直接await&#xff0c;因为它返回Handle对象而非Awaitable&#xff1b;正确做法是在回调中用asyncio.create_task启动协程。asyncio.call_later 为什么不能直接 await&#xff1f;因为 loop.call_later 是一个同步注册函数&#xff0c;它不返回协程对象&…...

程序员副业图谱

引言&#xff1a;程序员副业的现状与趋势程序员副业需求增长的背景&#xff08;技术变现、职业发展多元化&#xff09;CSDN作为技术社区在副业生态中的角色CSDN程序员副业图谱的核心模块技术内容创作博客/专栏写作&#xff1a;技术干货、实战经验、行业分析视频教程&#xff1a…...

一文吃透 TDengine:对比主流时序库、核心语法与避坑指南

前言在物联网、工业监控、车联网、能源等场景&#xff0c;时序数据&#xff08;时间戳 指标 标签&#xff09;的规模动辄亿级测点、万亿行数据&#xff0c;传统数据库与通用时序库往往陷入 “写不动、查不动、存不起” 的困境。TDengine&#xff08;涛思数据库&#xff09;凭…...

免疫治疗新视角:CD47 (分化簇47) 信号通路机制与药物研发技术综述

在生物制药与免疫学领域&#xff0c;CD47 (分化簇47) 作为连接先天免疫与适应性免疫的关键节点&#xff0c;近年来备受关注。作为一种广泛表达的跨膜糖蛋白&#xff0c;它通过复杂的信号轴调控免疫细胞的吞噬行为。本文将深入剖析CD47的作用机制、当前药物研发的临床进展以及未…...

STM32智能水产养殖系统设计与实践

1. 项目概述这个基于STM32的智能水产养殖大棚监测与控制系统&#xff0c;是我去年为一个淡水虾养殖场设计的实际项目。传统的水产养殖大棚主要依赖人工经验进行环境调控&#xff0c;不仅劳动强度大&#xff0c;而且难以实现精准控制。这套系统通过传感器网络实时采集水质参数&a…...

AI终于学会“动手”了:让ToClaw在高铁上帮我干活

在高铁上&#xff0c;我让 AI 帮我把电脑上的活干完了 上周出差&#xff0c;高铁上突然收到老板消息&#xff1a;「那份数据表记得今天下班前发我。」 我人在车上&#xff0c;电脑却留在公司。按以前&#xff0c;这事基本没戏——要么改签提前回去&#xff0c;要么硬着头皮说「…...

SimpleFOC源码学习03(v2.3.2) - 时间工具模块time_utils.cpp与time_utils.h

前言github源码&#xff1a;https://github.com/simplefoc/Arduino-FOC/tree/master/src/common 为什么需要time_utils.cpp与time_util.h&#xff1f; 在电机控制中&#xff0c;时间非常重要&#xff1a; PID 控制器需要知道"距上次运行过了多久"&#xff08;dt&…...

收藏!程序员转型AI必看:手把手教你构建百万级文档RAG系统

本文聚焦于企业级大模型应用中的RAG技术&#xff0c;针对10万级文档规模&#xff0c;探讨了如何构建一个高效、稳定且可扩展的RAG系统。文章从RAG的基本原理出发&#xff0c;分析了检索慢、召回率低和部署复杂三大痛点&#xff0c;并提出了相应的优化策略&#xff0c;包括文档预…...