软件测试基础篇(6)

news2024/11/15 8:14:02

两个测试模型:

一:软件测试V模型:从上到下是一个开发模型,从下到上是一个测试模型(V模型也是瀑布模型的一个变种)

需求分析--->计划---->设计---->编码----->测试

用户需求                                                         验收测试
    
    需求分析与系统                                         系统测试
    
          概要设计                                集成测试
          
               详细设计                单元测试
                           编码

1)概要设计:设计整体的架构和框架

2)详细设计:模块和模块之间的详细设计

3)单元测试和集成测试通常都是由我们的开发人员进行的

优点:

V模型左边的测试每一个阶段是右边的开发每一个阶段一一对应,左边的每一个阶段是右边每一个阶段测试的依据,更好地描述了这些测试阶段和开发阶段的对应关系,比较清晰,明显

缺点:

1)测试介入太晚,会失去前期错误及时纠正的这样一个阶段,不能很好地适应需求变化的项目,每一个阶段是单一串行执行,无法应用到敏捷开发

2)前期出现的问题,后面才会发现,测试在编码后面,丢失掉及时解决bug的最佳时机,左边的每一个阶段和右边每一个阶段对应的,测试介入的比较晚

3)测试预留出足够的时间,否则问题是会暴露给线上用户

二.软件测试W模型:

W模型增加了软件开发阶段应该同步进行的验证和确认活动,在我们的需求分析完成之后,测试人员就应该参与到对需求的验证和确认活动中,早早地找到问题所在,同时对需求的测试也有利于及时了解项目难度和测试风险,及早的制定应对措施,显著减少总体测试时间,加快项目进度,测试介入比较早,前期的风险可以比较早的发现,快速的纠正

 优点:

1)测试从需求阶段就开始介入了,项目风险在早期就能够被发现,项目风险一遗漏的概率还是比较小的

2)两个V迭代了一起,用户需求阶段,测试阶段就开始进行介入了,验证了各个阶段的合理性,更好的保证软件的质量,前期的缺点可以及时地发现;

缺点:

1)前一个阶段或者步骤完成之后,后一个阶段或者步骤才可以开始进行执行,每一个阶段性比较强

2)开发模型和测试模型也在保持着一种前后的线性关系(比如说我们的需求分析完成之后,咱们才可以做验收测试准备,需求分析和系统设计完成之后,才为系统测试做准备,编码之后才可以进行测试);

3)也是一个重文档,重过程,所以他是不支持敏捷开发模型的

4)不能很好地适应需求变化的项目

黑盒测试工程师:把代码看成一个黑匣子,只关心输入和输出结果之间的一个关系

白盒测试工程师:把代码看成一个百匣子,可以看到代码的本身,针对代码进行测试,发现可能会存在缺陷的情况

比如说举个例子:我们需要对QQ账号进行测试,要求QQ账号的长度范围是0-10

1)但是假设我此时我输入的QQ账号长度是2,5,8,此时软件功能没有任何问题

2)但是在代码中,假设变量是$message

if($message==4)  return;

3)此时开发的代码就是有问题的,因为此时如果说输入了字符长度是4,那么就会跳出循环,出现BUG

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

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

相关文章

java基于springboot的共享单车系统-计算机毕业设计

项目介绍 开发语言:Java 框架:springboot JDK版本:JDK1.8 服务器:tomcat7 数据库:mysql 5.7(一定要5.7版本) 数据库工具:Navicat11 开发软件:eclipse/myeclipse/idea Ma…

合并有序数组

目录 I.合并有序数组 Time Limit:1s Memory Limit: 256M Description: Input: Output: Sample input: Sample output: 约束: 思路代码: 1.暴力法 1.2暴力代码: 2.双指针(归并排序思路) 2.2双指针代码 总结: 题目链接: I.合并有序数组 Time Limit:1s Me…

专注推荐系统13年,我收获最大的4个成长

‍‍ 作者 | gongyouliu编辑 | gongyouliu我从2010年开始接触推荐系统,到现在差不多有13年了,这13年间我基本没有间断过对推荐系统的学习和实践(今年还看了两本推荐系统相关的书籍和一些论文)。回顾一下这十几年的经历&#x…

Java项目:SSM高校教职工差旅报销管理系统

作者主页:源码空间站2022 简介:Java领域优质创作者、Java项目、学习资料、技术互助 文末获取源码 项目介绍 管理员角色包含以下功能: 管理员登录,修改管理员资料,用户管理,公告管理,报销类型管理,系别信息管理,报销审核管理等功能。 用户角色…

Python webdriver.Chrome()的使用

1.前提 Python与Chrome路径下均安装chromedriver.exe。 2.chromedriver.exe版本选择及下载 下载地址为:http://npm.taobao.org/mirrors/chromedriver/ Chrome版本查看:浏览器右上角三个点->帮助->关于Google Chrome 找到对应的版本,主…

大数据面试之YARN常见题目

大数据面试之YARN常见题目 1 YARN工作机制 1.1 图解 上面有单词少个r,就不改了,大家知道就行。 1.2 文字描述 文字版描述: 1、MapReduce程序提交到Client所在节点,在MR程序的主函数当中有job.waitForCompletion()将任务进行提…

Linux网络-五种IO模型

Linux网络-高级IO零、前言一、什么是IO二、五种IO模型1、阻塞IO2、非阻塞IO3、信号驱动IO4、IO多路转接5、异步IO三、高级IO重要概念1、同步通信 vs 异步通信2、阻塞 vs 非阻塞3、其他高级IO零、前言 本章主要就Linux网络讲解非常重要的一个话题-高级IO 一、什么是IO IO是输入i…

20221211英语学习

今日新词: helplessly adv.无助地;无能为力地 physicist n.物理学家, 物理学研究者 capable adj.有能力的,有才能的;能胜任的;可以…的;容许…的 spokeswoman n.女发言人 production n.产量&#xff1…

卡尔曼滤波应用

卡尔曼滤波器的过程 卡尔曼滤波器的过程分为: 状态方程: xkAxk−1Buk−1ωk−1zkHxkνk这样就得到了状态方程和观测方程的表达式其中xk是状态向量,A是转移矩阵,B是输入转换为状态的矩阵,uk是系统输入,ωk是…

【波段自适应梯度和细节校正:统一遥感融合】

A Unified Pansharpening Model Based on Band-Adaptive Gradient and Detail Correction (基于波段自适应梯度和细节校正的统一全色锐化模型) 利用全色锐化技术将全色(PAN)图像与多光谱(MS)图像融合&…

谈谈Java应用发布时CPU抖动的优化

研究背景 通常情况下应用发布或重启时都存在cpu抖动飙高,甚至打满的现象,这是由于应用启动时,JVM重新进行类加载与对象的初始化,CPU在整个过程中需要进行比平时更多的编译工作。同样,闲鱼的消息系统在重新发布时经常有…

fsQCA+NCA方法的软件操作及注意事项、论文实证分析部分的写作范式

目录前言1 软件操作步骤2 fsQCA方法的详细操作步骤2.1 软件下载2.2 数据的准备2.3 校准点的确定2.4 变量的校准步骤及闪退问题2.5 fsQCA的数据必要性检验(开始一次最后一次)2.6 频数、一致性水平、PRI一致性水平的确定2.6.1 频数的确定2.6.2 一致性水平、…

【中级ECharts技术】前端框架ECharts的dataset 管理数据对数据可视化的高级dataset 管理

dataset 管理数据 提供一份数据。 声明一个 X 轴,类目轴(category)。默认情况下,类目轴对应到声明多个 bar 系列,默认情况下,每个系列会自动对应到 dataset 的每一列。 option = {legend: {},tooltip: {},dataset:

Mac 中 MongoDB 使用

根据 homebrew-brew 官方的解释得知,MongoDB 不再是开源的了,并且已经从 Homebrew中移除 #43770 正是由于 MongoDB 的商业化不太理想,所以它选择了闭源。所以,在它闭源之前的那些 brew 安装方法都会报错了。网上很多的文章都是基…

[附源码]JAVA毕业设计雅博书城在线系统(系统+LW)

[附源码]JAVA毕业设计雅博书城在线系统(系统LW) 项目运行 环境项配置: Jdk1.8 Tomcat8.5 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术…

你想要的图片效果(动态实现)

一、前言 没有使用任何框架API,代码或逻辑在html或小程序都适用。主要实现图片随机位置、随机大小、不重叠,在页面上排布;还有扩展功能选定固定图片位置槽数、固定大小、不重叠,在页面上通过添加,图片随机排布。 二、…

我的创作纪念日(4周年)

机缘 回想当初,博主2017年底从北京中石油(沙河总部)辞职,一心想回到自己的家乡成都工作、不想在北京待了,在总部赵总的推荐下来到四川中石油工作(刚好这边有人离职,所谓一个萝卜一个坑&#xf…

C语言入门(二)——常量,变量和表达式

继续Hello World 常量 变量 赋值 表达式 字符类型与字符编码 继续Hello World 前一个章节已经对Hello World程序做各种改动程序做各种改动看编译运行结果,其中有些改动会导致编译出错,有些改动会影响程序的输出,有些改动则没有任何影响…

C++:类的内存布局

文章目录1、虚的含义2、单基继承2.1、单继承2.2、单虚继承2.3、单虚继承 虚函数2.4、测试代码3、多基继承3.1、多继承 虚函数3.2、虚拟多继承 虚函数3.3、测试代码4、菱形继承4.1、菱形继承4.2、菱形虚拟继承4.3、测试代码5、效率分析建议先了解 C 继承与多态的相关知识&…

12.10 二叉搜索树与内部类

目录 一.二叉搜索树 1 概念 2 操作-查找 3.插入 4.删除(难点) 1.cur.leftnull 2.cue.rightnull 3.最复杂的情况 cur.left!null&&cur.right!null 6 性能分析 7 和 java 类集的关系 二.内部类 1.本地内部类 2.实例内部类 1.不可以定义静态 因为静态表示属于…