测试用例评审流程
1:评审的过程
A:开始前做好如下准备
1、确定需要评审的原因
2、确定进行评审的时机
3、确定参与评审人员
4、明确评审的内容
5、确定评审结束标准
6、提前至少一天将需要评审的内容以邮件的形式发送给评审会议相关人员。并注明详审时间、地点及偿参与人员等。
7、 在邮件中提醒评审会议相关人员至少简读一遍评审内容,并记录相关的疑问,以便在评审会议上提出。
8、 会议主持者(一般为用例编写人员)应在会议前整理相关疑问,以便在会议上提出。
B:开始评审
1、 召开评审会议。与会者在设计人员讲解之后给出意见和建议,同时进行详细的评审记录。
2、 通用邮件与相关人员沟通
3、 通用IM工具直接与相关人员交流
4、根据评审内容进行评审
2:评审内容
1、 用例设计的结构安排是否清晰、合理,是否利于高效对需求进行覆盖。
2、 优先极安排是否合理。
3、 是否覆盖测试需求上的所有功能点。
4、 用例是否具有很好可执行性。例如用例的前提条件、执行步骤、输入数据和期待结果是否清晰、正确;期待结果是否有明显的验证方法。
5、 是否已经删除了冗余的用例。
6、 是否包含充分的负面测试用例。充分的定义,如果在这里使用2&8法则,那就是4倍于正面用例的数量,毕竟一个健壮的软件,其中80%的代码都是在“保护”20%的功能实现。
7、 是否从用户层面来设计用户使用场景和使用流程的测试用例。
8、 是否简洁,复用性强。例如,可将重复度高的步骤或过程抽取出来定义为一些可复用标准步骤。
3:参与评审人员(这里会分为多个级别进行评审)
1、 部门评审,测试部门全体成员参与的评审。
2、公司评审,这里包括了项目经理、需求分析人员、架构设计人员、开发人员和测试人员。
3、 客户评审,包括了客户方的开发人员和测试人员。这种情况在外包公司比较常见
1、用例评审目的
测试用例评审流程规范主要为开展测试用例评审工作提供指引,规范测试用例评审管理工作。
2、测试用例评审流程内容
2.1 前提:测试人员编写完一个完整的功能模块的测试用例或已完成所有测试用例的编写;
2.2 流程输入:A.测试用例; B.需求规格说明;
2.3 流程输出:A.问题记录清单; B.测试用例评审报告;
2.4 参与评审人员:项目经理、测试负责人、测试人员、需求分析人员、架构设计人员、开发人员;
2.5 评审方式:
1)召开评审会议。与会者在测试用例编写人员讲解之后给出意见或建议,同时记录下评审会议记录;
2)通过邮件、及时通讯工具与相关人员沟通。
无论采用哪种方式,都应该在评审之前事先把需要评审的测试用例相关文档以邮件的形式发给参与评审的相关人员,同时在邮件中提醒参与评审的相关人员在评审前查阅一遍评审内容,并记录相关问题,以便在评审会议上提出,以节省沟通成本。
2.6 评审用例检查清单:
1)测试用例是否按照公司定义的模板进行编写的;
2)测试用例的本身的描述是否清晰,是否存在二义性;
3)测试用例内容是否正确,是否与需求目标相一致;
4)测试用例的期望结果是否确定、唯一的;
5)操作步骤应与描述是否相一致;
6)测试用例是否覆盖了所有的需求;
7)测试设计是否存在冗余性;
8)测试用例是否具有可执行性;
9)是否从用户层面来设计用户使用场景和业务流程的测试用例;
10)场景测试用例是否覆盖最复杂的业务流程;
11)用例设计是否包含了正面、反面的用例;
12)对于由系统自动生成的输出项是否注明了生成规则;
13)测试用例应包含对中间和后台数据的检查;
14)测试用例应有正确的名称和编号;
15)测试用例应标注有执行的优先级;
16)测试用例包含相关的配置信息:测试环境、数据、前置测试用例、用户授权等;
17)每个测试用例步骤应<=15 Step;
18)自动化测试脚本必须带有注释(注释应包括:目的、输入、期望结果等);
19)非功能测试需求或不可测试需求是否在用例中列出并说明?
2.7 退出标准:
1)评审过程中收集相关人员的反馈信息(即问题记录清单),并在此基础上进行测试用例更新,直到评审通过;
2)评审结束后,测试负责人出测试用例评审报告给到相关人员;
3)评审结果经项目经理同意确认。
2.8 控制机制:
采用评审会议时,主持人应尽量把握会议进度,尽量按时有效的完成评审工作;
附件1:问题记录清单 附件2:测试用例评审报告
测试用例评审的意义何在:测试用例要符合产品需求,但是产品功能是开发写的,开发实现的逻辑需要评审沟通,以免有不清楚的逻辑点;可以提高测试用例的正确性、提高测试效率;提高测试用例的覆盖度,更好的发现BUG。
三、用例评审时间
对于敏捷开发项目,建议控制在半小时以内。
如果你认为需求复杂,功能点太多,半小时讲不完,那么建议你对功能点划分优先级,优先评审优先级高的用例,再针对疑问多的用例评审,最后对于功能简单的用例可简单带过。时刻记住我们用例的评审目标,不能流于形式。
四、用例评审的形式
1、对照测试用例,从上而下,从左到右,逐条念。
这是目前很多公司的做法,如果你也这么做过,相信你并不一定喜欢这种方式,因为它费时,不分主次,参会人员的热情与注意力逐渐降低,整个用例评审效率低,作为主持人也讲的口干舌燥,事倍功半。
2、先对功能复杂,优先级高,疑问多的用例进行评审,再评审功能简单,优先级低的功能点。
对于评审过程中,一时半会没有结论的问题,可以记录下来,作为会后讨论跟进的重点。
这种做法,有很多优点,评审刚开始的一段时间,大家注意力集中,参与激情高,这段时间讨论有难度有疑问的问题,效率高。最重要的事最先做。
另外,整个评审会主次分明,有高潮有缓点,可以更高效的达到我们评审的目的。
五、正式评审
正式评审过程中需要注意几个细节,如果你都做到了,那么可以说整个评审是成功的,有价值的。
1、评审要按用例的优先级,功能的复杂程度进行;
2、评审过程中尽量做到,思路清晰,用最简洁的语言阐述每一个功能点;
3、超过5分钟无法确定结果的问题留作会后讨论跟进。
六、评审结束后需要做些什么事?
不是说评审会结束了,就完事了,其实对于整个用例评审,这才做了一半。
评审结束后,第一时间整理测试用例,把修正的内容重新整理补全。
会上未确定的内容,会后继续跟进,直到确定结果。
没有任何有疑问的地方了,再做个简单的用例评审会议总结(如修正了哪些功能点,补全了哪些?哪些模块功能有变动?哪些功能推迟到下一期做?等),
这个总结是给自己整个用例评审工作总结,同时需同步给项目组其他成员,做好信息共享,这点很重要。
相关文章:

测试用例评审流程
1:评审的过程 A:开始前做好如下准备 1、确定需要评审的原因 2、确定进行评审的时机 3、确定参与评审人员 4、明确评审的内容 5、确定评审结束标准 6、提前至少一天将需要评审的内容以邮件的形式发送给评审会议相关人员。并注明详审时间、地点及偿参与人员等。 7、 在邮件中提醒…...

鸿蒙开发案列一
1、开发需求 案例app一打开是“Hello world” 界面,开发者点击“Hello world”变成“Hello ArkUI”’ 2、源代码 Entry Component struct Hello {State person_name: string Worldbuild() {Row() {Column() {Text(Hello this.person_name).fontSize(50).fontWei…...

Vue实现图片预览,侧边栏懒加载,不用任何插件,简单好用
实现样式 需求 实现PDF上传预览,并且不能下载 第一次实现:用vue-pdf,将上传的文件用base64传给前端展示 问题: 水印第一次加载有后面又没有了。当上传大的pdf文件后,前端获取和渲染又长又慢,甚至不能用 修…...

Spring依赖注入之setter注入与构造器注入以及applicationContext.xml配置文件特殊值处理
依赖注入之setter注入 在管理bean对象的组件的时候同时给他赋值,就是setter注入,通过setter注入,可以将某些依赖项标记为可选的,因为它们不是在构造对象时立即需要的。这种方式可以减少构造函数的参数数量,使得类的构…...

碳排放预测 | Matlab实现LSTM多输入单输出未来碳排放预测,预测新数据
碳排放预测 | Matlab实现LSTM多输入单输出未来碳排放预测,预测新数据 目录 碳排放预测 | Matlab实现LSTM多输入单输出未来碳排放预测,预测新数据预测效果基本描述程序设计参考资料 预测效果 基本描述 1.Matlab实现LSTM长短期记忆神经网络多输入单输出未来…...

手拉手JavaFX UI控件与springboot3+FX桌面开发
目录 javaFx文本 javaFX颜色 字体 Label标签 Button按钮 //按钮单击事件 鼠标、键盘事件 //(鼠标)双击事件 //键盘事件 单选按钮RadioButton 快捷键、键盘事件 CheckBox复选框 ChoiceBox选择框 Text文本 TextField(输入框)、TextArea文本域 //过滤 (传入一个参数&a…...
02 分解质因子
一、数n的质因子分解 题目描述: 输入一个数n(n<10^6),将数n分解质因数,并按照质因数从小到大的顺序输出每个质因数的底数和指数。 输入 5 输出 5 1 输入 10 输出 2 1 5 1 朴素解法: 首先求出1~n的所有质数…...

科技赋能智慧水利——山海鲸软件水利方案解析
作为山海鲸可视化软件的开发者,我们深感荣幸能为我国智慧水利建设提供强大助力。作为钻研数字孪生领域的开创者,我们希望不仅能为大家带来免费好用,人人都能用起来的数字孪生产品,还希望以其独特的技术优势和创新设计理念…...

C4.5决策树的基本建模流程
C4.5决策树的基本建模流程 作为ID3算法的升级版,C4.5在三个方面对ID3进行了优化: (1)它引入了信息值(information value)的概念来修正信息熵的计算结果,以抑制ID3更偏向于选择具有更多分类水平…...
本科毕业设计过程中应该锻炼的能力 (深度学习方向)
摘要: 本文以本科毕业设计做深度学习方向, 特别是全波形反演为例, 描述学生应在此过程中锻炼的能力. 搭建环境的能力. 包括 Python, PyTorch 等环境的安装.采集数据的能力. 包括 OpenFWI 等数据集.查阅资料的能力. 包括自己主要参考的文献, 以及其它相关文献 (不少于 20 篇). …...

深度学习——pycharm远程连接
目录 远程环境配置本地环境配置(注意看假设!!!这是很多博客里没写的)步骤1步骤2步骤2.1 配置Connection步骤2.2 配置Mappings 步骤3 配置本地项目的远程解释器技巧1 pycharm中远程终端连接技巧2 远程目录技巧3 上传代码文件技巧4 …...

信号量机制解决经典同步互斥问题
生产者 / 消费者问题、读者 / 写者问题和哲学家问题是操作系统的三大经典同步互斥问题。本文将介绍这三个问题的基本特点以及如何用信号量机制进行解决。 在分析这三个问题之前,我们首先需要了解用信号量机制解决同步互斥问题的一般规律: 实现同步与互斥…...
java基础09-==和equals()的区别,附代码举例
和equals()的区别 在Java中,和equals()是两个不同的运算符,它们在比较对象时有着本质的区别。 运算符: 用于比较两个基本数据类型(如int、char等)或两个对象的引用。 当用于比较基本数据类型时,它会比较它们的值。 当…...

qml与C++的交互
qml端使用C对象类型、qml端调用C函数/c端调用qml端函数、qml端发信号-连接C端槽函数、C端发信号-连接qml端函数等。 代码资源下载: https://download.csdn.net/download/TianYanRen111/88779433 若无法下载,直接拷贝以下代码测试即可。 main.cpp #incl…...

LabVIEW电路板插件焊点自动检测系统
LabVIEW电路板插件焊点自动检测系统 介绍了电路板插件焊点的自动检测装置设计。项目的核心是使用LabVIEW软件,开发出一个能够自动检测电路板上桥接、虚焊、漏焊和多锡等焊点缺陷的系统。 系统包括成像单元、机械传动单元和软件处理单元。首先,利用工业相…...

第十一站:多态练习ODU
实现动态切换 ODU.h #pragma once #include <iostream> using namespace std; #define ODU_TYPE_311_FLAG "311" #define ODU_TYPE_335_FLAG "335" enum class ODU_TYPE {ODU_TYPE_311,ODU_TYPE_335,ODU_TYPE_UNKNOW };class ODU{ public:ODU();//发…...
【深度学习】详解利用Matlab和Python中 LSTM 网络实现序列分类
🔗 运行环境:Matlab、Python 🚩 撰写作者:左手の明天 🥇 精选专栏:《python》 🔥 推荐专栏:《算法研究》 🔐#### 防伪水印——左手の明天 ####🔐 💗 大家好🤗🤗🤗,我是左手の明天!好久不见💗 💗今天分享Matlab深度学习—— LSTM 网络实现序列分...

Unity 工厂方法模式(实例详解)
文章目录 在Unity中,工厂方法模式是一种创建对象的常用设计模式,它提供了一个接口用于创建对象,而具体的产品类是由子类决定的。这样可以将对象的创建过程与使用过程解耦,使得代码更加灵活和可扩展。 工厂模式的主要优点如下&…...

2024年美赛数学建模思路 - 案例:异常检测
文章目录 赛题思路一、简介 -- 关于异常检测异常检测监督学习 二、异常检测算法2. 箱线图分析3. 基于距离/密度4. 基于划分思想 建模资料 赛题思路 (赛题出来以后第一时间在CSDN分享) https://blog.csdn.net/dc_sinor?typeblog 一、简介 – 关于异常…...

一键完成,批量转换HTML为PDF格式的方法,提升办公效率
在当今数字化的时代,HTML和PDF已经成为两种最常用的文件格式。HTML用于网页内容的展示,而PDF则以其高度的可读性和不依赖于平台的特性,成为文档分享和传播的首选格式。然而,在办公环境中,我们经常需要在这两种格式之间…...
Java 8 Stream API 入门到实践详解
一、告别 for 循环! 传统痛点: Java 8 之前,集合操作离不开冗长的 for 循环和匿名类。例如,过滤列表中的偶数: List<Integer> list Arrays.asList(1, 2, 3, 4, 5); List<Integer> evens new ArrayList…...
在rocky linux 9.5上在线安装 docker
前面是指南,后面是日志 sudo dnf config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo sudo dnf install docker-ce docker-ce-cli containerd.io -y docker version sudo systemctl start docker sudo systemctl status docker …...

汽车生产虚拟实训中的技能提升与生产优化
在制造业蓬勃发展的大背景下,虚拟教学实训宛如一颗璀璨的新星,正发挥着不可或缺且日益凸显的关键作用,源源不断地为企业的稳健前行与创新发展注入磅礴强大的动力。就以汽车制造企业这一极具代表性的行业主体为例,汽车生产线上各类…...

MMaDA: Multimodal Large Diffusion Language Models
CODE : https://github.com/Gen-Verse/MMaDA Abstract 我们介绍了一种新型的多模态扩散基础模型MMaDA,它被设计用于在文本推理、多模态理解和文本到图像生成等不同领域实现卓越的性能。该方法的特点是三个关键创新:(i) MMaDA采用统一的扩散架构…...

【数据分析】R版IntelliGenes用于生物标志物发现的可解释机器学习
禁止商业或二改转载,仅供自学使用,侵权必究,如需截取部分内容请后台联系作者! 文章目录 介绍流程步骤1. 输入数据2. 特征选择3. 模型训练4. I-Genes 评分计算5. 输出结果 IntelliGenesR 安装包1. 特征选择2. 模型训练和评估3. I-Genes 评分计…...
Linux C语言网络编程详细入门教程:如何一步步实现TCP服务端与客户端通信
文章目录 Linux C语言网络编程详细入门教程:如何一步步实现TCP服务端与客户端通信前言一、网络通信基础概念二、服务端与客户端的完整流程图解三、每一步的详细讲解和代码示例1. 创建Socket(服务端和客户端都要)2. 绑定本地地址和端口&#x…...

Git 3天2K星标:Datawhale 的 Happy-LLM 项目介绍(附教程)
引言 在人工智能飞速发展的今天,大语言模型(Large Language Models, LLMs)已成为技术领域的焦点。从智能写作到代码生成,LLM 的应用场景不断扩展,深刻改变了我们的工作和生活方式。然而,理解这些模型的内部…...
深度解析:etcd 在 Milvus 向量数据库中的关键作用
目录 🚀 深度解析:etcd 在 Milvus 向量数据库中的关键作用 💡 什么是 etcd? 🧠 Milvus 架构简介 📦 etcd 在 Milvus 中的核心作用 🔧 实际工作流程示意 ⚠️ 如果 etcd 出现问题会怎样&am…...
计算机系统结构复习-名词解释2
1.定向:在某条指令产生计算结果之前,其他指令并不真正立即需要该计算结果,如果能够将该计算结果从其产生的地方直接送到其他指令中需要它的地方,那么就可以避免停顿。 2.多级存储层次:由若干个采用不同实现技术的存储…...

java 局域网 rtsp 取流 WebSocket 推送到前端显示 低延迟
众所周知 摄像头取流推流显示前端延迟大 传统方法是服务器取摄像头的rtsp流 然后客户端连服务器 中转多了,延迟一定不小。 假设相机没有专网 公网 1相机自带推流 直接推送到云服务器 然后客户端拉去 2相机只有rtsp ,边缘服务器拉流推送到云服务器 …...