软件测试模式

常见的二十种软件测试方法全面讲解(史上最全) 软件测试(英语:Software Testing),描述一种用来促进鉴定软件的正确性、完整性、安全性和质量的过程。换句话说,软件测试是一种实际输出与预期输出之间的审核或者比较的过程。通俗的来讲,“软件测试”就是通过软件测试人员验证软件是否满足用户的需求。最终交付的产品是否和用户本来的需求一致,如果不一致,需要找出不一样的点提交给开发员进行修复改善,测试人员在测试过程中找出的问题统称为“Bug”。在规定的条件下对程序进行操作,以发现程序错误,衡量软件质量,并对其是否能满足设计要求进行评估的过程。 阅读详情

软件测试按测试模式分类:
1.瀑布模型: 
项目计划 (制定总体的研发计划,确定主要的里程碑节点-输出项目计划书)
需求分析(明确用户需求定义,并对定义进行清晰描述,充分理解需求,描述产品功能- 输出产品需求规格说明)
软件设计-根据需求定义,设计产品的实现方案,包括定义软件硬件的结构、组件、实现方法、接口、界面、数据-输出概要设计、详细设计
程序开发-根据概要和详细设计具体实现,根据编程规范构建各类组件模块,输出产品版本。
软件测试-通过独立的测试小组评估产品是否满足需求定义-输出测试报告
集成维护-交付用户,根据用户使用情况进行维护及升级

优:
强调需求、设计的作用,保证用户需求有一个充分的了解
阶段分工明确
按阶段划分检查点,里程碑清晰
文档规范
缺:
难以适应需求变化
项目周期后段才能看到成果
强制里程碑、完成时间点,对变化不容易适应
产生大量文档,工作量大
从测试角度不能体现测试的价值和地位

 

V模型


是瀑布模型的变种
明确表明测试过程的不同级别,阶段 单元测试-集成测试-系统测试-验收测试
并且描述了各个阶段与开发过程各个阶段的对应关系 
优点:
v模型 强调软件开发的协作和速度,反应测试活动和分析设计的关系,软件的实现和验证有机结合
缺点:
仅把关系明确对应,忽略了对需求分析的验证,对需求和功能的测试到验收测试才能发现;没有很好的体现测试的及时性

 

w模型

 

v模型的改进
增加了开发各个阶段的验证,测试的对象不再是对象,对需求和分析都有测试过程
有利于及于发现项目的风险,线性的相互关系,串行
不能很好的支持像迭代这样的模式

 

x模型


针对v模型的改进,主要解决交接和频繁周期的问题,左边是针对单独的程序片段所进行的相互分离的编码和测试,然后进行频繁的交接,再通过集成,最终合成可执行的程序,x模型还可以探索性测试,不进行事先计划,可以发现过多的错误

 

H模型


把测试当成一个完全独立的流程 便于尽早的完成测试,与其他流程并发进行,可以是任何流程,可交叉


2.敏捷测试 

敏捷测试:Agile Testing----遵循敏捷宣言的一种测试实践

敏捷宣言:个体与交互 重于 过程和工具
可用的软件 重于 完备的文档
客户协作 重于 合同谈判
响应变化 重于 遵循计划 

敏捷测试:强调从客户角度测试
重点关注迭代测试新功能,不在强调测试阶段
尽早测试,不间断测试,具备条件即测试
强调持续反馈
预防缺陷重于发现缺陷

敏捷测试VS传统测试:

传统测试                                                                                             敏捷测试
测试是质量的最后保护者                                       开发和测试人员紧密合作,大家都有责任对软件负责
严格的变更管理                                                     变更可以接受
预先的计划和细节准备                                           计划随着进展时常调整
重量级文档                                                            只需要必要的文档
各阶段测试严格的入口和出口标准                          各迭代之间没有明显入口和出口标准,更多在回归测试                                                                               时进行重量级自动化测试 所有阶段都要自动测试,每个                                                                               人都需要做,是项目集成一部分
测试 开发 相对独立                                                合作


3.基于脚本的测试 

基于脚本的测试 SBT script-based testing 和ET【探索性测试】 互补
ST                                                                                                    ET
系统性强                                                                                       自由灵活
容易管理控制                                                                                和ST互补
设计在先,执行在后                                                                   执行和设计并行
主要是验证自己的思路                                                     不断和系统交互,带着问题测试
可预见                                                                                            学习的过程
4.基于风险的测试

基于风险的测试:RBT risk based testing一种基于对软件失效的风险评估并以此指导测试计划,设计,执行,结果评价的软件测试类型
风险包括 质量风险 管理风险 

风险级别=风险可能性*风险严重度
5.探索式测试

 

探索式测试更适用于敏捷项目。测试管理上有局限性。只有在SUT完全可用下更有作用。生产率难定义。

输入 状态 代码路径 用户数据 执行环境 

局部探索式测试
输入:接受输入,产生输出,存储数据,进行运算;
测试时:输入顺序,输入内容,输出异常
状态:临时状态(运行时有效,截断时有效)和永久状态(数据库保存,文件保存)
代码路径:对代码的覆盖,白盒测试
用户数据:最好真实;
执行坏境:软件运行的系统,网络拓扑,系统的配置数据,跟系统交互的第三方系统,运行系统的硬件设备


全局探索测试: 漫游测试法


基于模型的测试:MBT model based testing 对需求功能点建模 自动化
主要MBT工具:Spec Explorer  GraphWalker  Tcases  modeljunit

结语:

最后跟大家推荐一个学习资料分享群:175317069,里面大牛已经为我们整理好了许多的学习资料,有自动化,接口,性能等等的学习资料!

人生是一个逆水行舟的过程,不进则退,咱们一起加油吧!

软件测试的分类——按测试模式来分类 安测试模式来分类: 瀑布模型、敏捷测试、基于脚本的测试、基于风险的测试、探索式测试等 常用的测试模型 1、传统的瀑布模型——最早出现的软件开发模型 项目计划——需求分析——软件设计——程序开发——软件测试——集成维护。 每一个阶段都是以上个阶段的输出作为下个阶段的输入。 项目计划:制定项目总体的研发计划,确定主要的里程碑节点。输出项目的技术书。 需求分析:明确用户需求定义,并对定义进 阅读详情

相关推荐

工厂模式与仓库模式在软件测试中的应用

本文探讨了工厂模式和仓库模式在软件测试和业务逻辑中的应用,通过测试对象母亲和测试数据构建器减少重复性,并介绍了如何使用仓库模式来管理领域对象的持久化。

weixin_35756373的博客 420

关于测试模式

软件测试的分类 按测试模式来分类 瀑布模式、敏捷测试、基于脚本大的测试、基于风险的测试、探索式测试等 传统的瀑布模型(传统软件工程学的开发模式) 项目计划-->需求分析-->软件设计-->程序开发-->软件测试-->集成维护 项目计划:制定项目总体的研发计划,确定项目主要的里程碑节点;需要输出项目计划书。 需要分析:明确用户的需求定义,并对定义进行清晰的描述,是充分理解客户需求,详细描述产品功能的一个重要阶段;需要输出产品的需求规格书。 软件设计:...

Pigkillers的博客 981

分享一些基于微信小程序开发的小游戏源码

小游戏小程序是运行在微信生态系统(或其他支持小程序的平台)中的轻量级应用程序,专为休闲游戏体验而设计的小程序子类别,小游戏小程序通常体积较小,加载速度快,用户无需等待长时间即可开始游戏。用户无需下载或安装单独的游戏应用程序,即可通过小程序入口直接进入游戏,同时小游戏小程序通常包含排行榜、分享功能等社交元素,可以增强游戏体验并促进用户参与。game.js:游戏页面的逻辑文件,包含页面数据、生命周期函数、事件处理函数等。game.wxml:游戏页面的结构文件,定义了页面的布局和组件。

xinshangdian的博客 6239

软件测试模型

软件测试模型

qq_51447436的博客 5984

SAP 财务快速记账之—G/L Item Fast Entry

SAP FICO 运维解决方案

lijinbao171022的博客 1647

win10删除vmware12后,重新安装失败(遗留注册表问题)解决总结

之前安装过一次VMware虚拟机,后来由于某些已遗忘原因把它卸载了,但是没有卸载完全,为以后安装留下了一些麻烦,现在根据我google很多内容总结后写下了自己的解决办法。 一些我搜的的可以用的VM12的注册码 5A02H-AU243-TZJ49-GTC7K-3C61N ZZ510-DYX47-48ERP-D6XZG-YCKU2 YV5MU-2FX5H-M841P-LZX5X-PYHX8

Jeason的博客 2万+

软件测试前准备及软件测试模式

一、软件测试前准备,搭建测试环境 1、什么是测试环境? (1)测试环境 = 软件 + 硬件 + 网络 (2)测试环境是指测试人员利用一些工具及数据所模拟出、接近用户真实使用环境的环境,测试环境的目的主要是为了使测试结果更加真实有效。 (3)测试环境是指为了完成软件测试工作所必需的计算机硬件、软件、网络设备、历史数据的总称。 注: 硬件:PC机、笔记本、手机、服务器、设备、网线、分配器...

weixin_44773193的博客 2256

【人工智能】Claude Code 安装、配置及问题排查完整指南

建议使用IDE来启动 Claude,执行后,内容如下。(确保环境可正常运行 npm 命令)。

奶爸的编程之路,也就一周冷个三天 1210

软件测试PO模式

找到登录的文本,执行点击操作,这里我方便演示就没有执行, 然后执行 梦开始的地方,**第一步把需要的值传递进去,需要几个地方写值就传递几个,但是每增加一个值,在定位处还有别的查找元素方法就需要多增加一条数据,**这里只写值,传递到。缩写,是自动化测试项目开发实践的最佳设计模式之一,核心思想是通过对界面元素的封装减少多余代码,并且后期维护 若元素发生变化 只需要调整页面元素封装的代码 提高测试用例的可维护性 可读。结果发现是先执行清空再添加,值,到这里 第3步执行完成,去**login****_**

saber的博客 1171

SCADA|测试KingSCADA4.0信创版采集汇川PLC AC810数据

摘要:雷工分享KingSCADA4.0信创版采集汇川PLC数据的配置过程。由于项目繁忙,笔记更新延迟。信创产业要求采用国产化产品,此次通过ModbusTCP协议连接AC810 PLC。主要步骤包括:新建IOServer应用(需厂家协助从3.8升级至4.0)、安装ModbusTCP驱动、配置设备地址(192.168.1.88:5021)、运行IOServer并通过网页监控变量。尽管信创版操作体验较差,但出于国产化战略需要仍需使用。雷工表示理解产品初期不足,相信未来会逐步优化。2025年4月11日记录于四川绵阳

做有价值的事,积累有价值的笔记! 865

详解大模型微调数据集构建方法(持续更新)

本文详细介绍了大模型微调数据集构建方法,希望能对学习大模型的同学们有所帮助。 文章目录 1. 前言 2. 微调数据集构建方法 2.1 方法一 2.2 方法二 2.3 方法三 2.4 方法四 2.5 方法五

herosunly的博客 28万+

软件测试 forthday(基于缺陷模式的软件测试)

一、缺陷模式 1.该模式下的缺陷是符合实际的。该模式定义的缺陷在实际工程中是大量存在的。 2.基于该模式的缺陷数目是可以容忍的。一般缺陷数目和系统规模成线性关系。 3.该模式下的缺陷是可以测试的。应该存在一个算法可以检测出来。 二、基于缺陷模式的软件测试技术特点 1.针对性强:如果说某种模式的缺陷是经常发生的,并且在被测软件中是存在的,则面向缺陷的测试可以检测出此类缺陷; 2.具有特殊...

Ritannn的博客 1138

TC3XX - MCAL知识点(二十九):FLS MCAL配置及代码实战(英飞凌DFLASH)

FLS驱动程序为DFlash 0的初始化、读取、写入和擦除提供了定义良好的配置和标准服务。除此之外,我们还提供一些非autosar服务示例 Fls_17_Dmu_CompareWordsSync、Fls_17_Dmu_CancelNonEraseJobs、Fls_17_Dmu_VerifyErase,LFls_17_Dmu_VerifySectorErase、Fls_17_Dmu_GetNotifCaller等。用户通过FLS驱动程序获得对底层DFlash0的封装访问。

梦想技术家 2365

基于缺陷模式的软件测试

基于缺陷模式的软件测试是一种常见的软件测试方法,旨在发现和识别软件系统中可能存在的缺陷模式。设计测试用例:根据缺陷模式库,设计测试用例来覆盖已识别的缺陷模式。分析测试结果:对测试结果进行分析,确定是否存在新的缺陷模式或者已知缺陷模式的变体。如果发现新的缺陷模式,可以将其添加到缺陷模式库中。如果测试用例能够触发已知的缺陷模式,那么就可以确认软件中存在相应的缺陷。缺陷模式识别:在收集到足够的缺陷数据后,可以进行缺陷模式的识别。构建缺陷模式库:基于已识别的缺陷模式,可以构建一个缺陷模式库。

qq_69749315的博客 767

【WiFi】T830 MT7992 WMM测试修改操作说明

WiFi WMM(Wi-Fi Multimedia)是Wi-Fi联盟推出的一项技术,用于优化无线网络中的多媒体内容传输。WMM通过优先处理不同类型的数据流来改善网络性能,特别是在网络拥堵时。:WMM通过提供服务质量支持,确保语音、视频和其他多媒体应用在无线网络中获得优先处理。这有助于减少延迟和抖动,改善用户体验。:WMM将数据流分为四个优先级队列:语音、视频、最佳效果(Best Effort)和背景(Background)。语音和视频流通常被赋予更高的优先级,以确保它们在网络中得到及时传输。

wgl307293845的博客 1022

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

基于矩阵模式的 Web 软件测试手段

在 Web 测试中,我们经常针对某个测试点进行多种场景测试,或者是重复性测试,或者与其他测试点交互测试模仿用户行为,这样就需要编写多条测试用例来完全覆盖。利用矩阵模式不仅可以缩小编写测试用例占用的时间和人力,而且对其测试结果易于追踪

EIP的专栏 1068

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

软件测试基础(七)软件测试模式

一。1.瀑布模型:      (没有体现软件测试的作用,基本只出现在后期,起不就作用)2。V模型(最广泛)  软件测试只出现在后期W模型(双V模型)  开发与测试并行,可以尽早发现问题 局限性:需求、设计、编码仍然是串行进行的,上一个阶段完成之后才能进行下一个阶段 4.X模型    解决交接和频繁集成周期的问题5.H模型  把软件测试看成一个独立的流程,与其他流程并发进行,比如设计流程,并发流程,...

好好的学习空间 656

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

软件测试常用设计模式

关键字驱动的自动化测试(也被称为表驱动测试或基于动作词的测试),是数据驱动自动化测试的变种,关键字驱动的自动化测试框架建立在数据驱动手段之上,表中包含指令(关键词),而不只是数据。关键字驱动的自动化测试是对数据驱动的自动化测试的有效改进和补充;数据驱动测试的多行测试数据对应一个测试脚本(或者说对应于一个关键字的实现,例如登录功能的测试,可以有用户名长度、密码长度、密码字符类型、大小写等多条测试用例,但是都是对应登录一个关键字),然后用不同的测试数据反复运行脚本(即每一行数据的处理逻辑是一样的)。

HUACE5400的博客 885

软件测试能力模式(自己理解)

前不久看了"架构师jack"的软件测试能力模式, 觉得有道理.   下面说下自己的看法, 调整或者说山寨一份:

软件测试 584

软件测试常用设计模式(超详细)

摘要:设计模式的核心原则是高内聚、低耦合。数据驱动测试(DDT)通过外部数据文件实现测试数据与脚本分离,提高脚本复用性但不适合界面频繁变更的场景。关键字驱动测试(KDT)是DDT的改进,将测试分解为对象、操作和值三个维度,实现界面元素与测试逻辑的分离。页面对象模式(POM)封装页面元素和操作,单例模式确保WebDriver只实例化一次。文章还介绍了组件测试(CBT)、业务流程测试(BPT)等模式,强调合理封装对测试效率的提升作用,最后分享了软件测试学习资源。

nhb000000的博客 907

【软件测试】软件测试模式

按测试模式分类 瀑布模型、敏捷测试、基于脚本的测试、基于风险的测试、探索式测试 传统的瀑布模型 项目计划:确定计划 需求分析:明确用户需求 软件设计:根据需求确定实现方案 程序开发:实现产品 软件测试:评估产品是否满足需求 集成维护:根据用户使用情况进行维护 优缺点 V模型 使用最广泛的模型 单元、集成测试:检测程序是否满足设计要求 系统测试:软件在功能、性能上是否满足系统要求 验收测试:是...

weixin_44322157的博客 360
上一篇: 你不知道的软件测试那些事?
下一篇: 开发要不要自己做测试?怎么做?
TestingGDR
博客等级 码龄8年 496粉丝 72原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值