『测试基础』| 如何理解测试用例管理和缺陷管理?

『测试管理攻略』| 如何理解测试用例管理和缺陷管理?

  • 1 测试用例定义
  • 2 测试用例设计原则
  • 3 测试用例的评审
  • 4 测试如何维护?
  • 5 用例的作用
  • 6 用例管理工具
  • 7 缺陷关注的重点
  • 8 缺陷分析
  • 9 缺陷管理工具

1 测试用例定义

  • 测试用例(TestCase)为测试对象编制一种测试输入、执行条件和预期结果;
  • 用例可以体现测试方案、方法、技术和策略;
  • 用例的内容一般包含:
# 测试对象名称
# 测试项
# 测试目标
# 测试环境
# 测试输入
# 测试步骤
# 预期结果
# 测试脚本等
  • 平常我们最简化的测试用例至少应该包含测试输入和预期结果。

2 测试用例设计原则

  • 测试用例应覆盖三类事件:
# 1、基本事件:根据需求需要实现所有功能的测试用例,覆盖率达到100%;
# 2、备选事件:程序执行中的备选情况;
# 3、异常事件:程序执行出错处理的路径。
  • 使用等价类划分法实现基本测试用例,将无限测试变成有限测试;
  • 使用边界值发现程序可能出现错误的边界问题或临界条件;
  • 使用错误推断法追加一些测试用例,这个和一些经验有关;
  • 对照程序逻辑,检查已设计测试用例的逻辑覆盖程度;
  • 关于有输入条件的测试用例,在开始时应选择决策表驱动法和因果图法;
  • 对于参数配置类软件,应采用正交实验法设计用例;
  • 对于业务流程清晰的系统,可采用场景法设计用例。

3 测试用例的评审

评审的要点,可以分以下内容:

  • 是否覆盖了测试需求的所有功能点?
  • 是否覆盖了所有非功能性测试需求?
  • 测试用例编号是否和测试需求对应?
  • 测试设计是否包含了正面和反面的测试用例?
  • 是否明确了测试特性、步骤、执行条件、预期结果等内容?
  • 是否包含了测试数据、测试数据的生成办法?
  • 是否具备可操作性?
  • 优先级安排是否合理?
  • 是否删除了冗余的测试用例?
  • 用例设计的是否简洁?是否复用性强?

4 测试如何维护?

一般情况下我们需要对测试用例进行维护更新,更新的点有:

  • 废弃的用例如何处理?
  • 因需求的变更,用例的标识和需求的标识是否对应?
  • 经过多次迭代测试,用例的优先级执行是否需要更改?
  • 用例的设计场景是否需要完善?
  • 用例的执行人员是否设置合理?
  • 用例的版本更新等。

另外,为什么需要更新维护呢?原因有下:

  • 测试过程中发现用例设计不全,需要进行补充完善;
  • 软件交付后反馈了软件问题,而这些问题恰巧在测试时并没有发现,需要对这些缺陷补充相关的用例;
  • 软件的更新,导致需求有所变动,需要更新用例等。

5 用例的作用

  • 发现和跟踪软件缺陷;
  • 更准确的反应软件的某一个特性;
  • 反应软件的性能和质量;
  • 明确故障责任等。

6 用例管理工具

  • 用例管理的工具有很多,比如
1、PingCode;2、TestRail;
3、TestLink;4、Jira;
5、PractiTest;6、PractiTest;
7、Zephyr Enterprise;8、MeterSphere;
9、Bugzilla、10、ZenTao
  • 我们这里来举个例子,比如禅道(以下为举例,仅供参考,具体的工具使用还是需要根据团队和项目的规模和工作模式来选择):
    在这里插入图片描述
    用例的创建基本包含了很多常用的字段:
    在这里插入图片描述
  • 用例执行,一般要说明这个用例执行的情况,比如失败还是通过等等:
    在这里插入图片描述
  • 大部分平台也可以对用例进行关联bug、关联需求、关联项目等等,有的是针对项目设计用例,有的是直接用例库中进行设计,需要的时候可以进行关联操作等。

7 缺陷关注的重点

  • 以下是列出了缺陷需要关注的一些部分重点字段,当然不止这些:
关键字段说明
缺陷状态比如已提交、待修改、已确认、已修改、重复、待评审、关闭等等
缺陷标题简单明了说明缺陷
严重程度一般为致命、严重、一般、提示、建议;有的也分A、B、C、D等
紧急程度从1到4,最高为1级
缺陷类型功能缺陷、界面设计缺陷、安全性、接口、性能、数据等缺陷
提交人缺陷的提交人员,便于缺陷复现、跟踪和管理
所属项目或模块明确缺陷的所属
解决人一般为对应的开发人员
解决时间比如项目经理指定的开发人员解决缺陷的时间
关闭时间最终被关闭的时间等

8 缺陷分析

我们需要对缺陷进行统计分析,比如以下:

  • 缺陷的主要分布模块;
  • 缺陷产生的原因;
  • 根据已知的缺陷,分析可能产生的缺陷模块;
  • 根据缺陷的产生,分析软件的质量情况;
  • 根据提交缺陷,分析测试人员的技术提升点;
  • 根据缺陷修改的程度,分析对应解决人的缺陷解决质量情况等。

9 缺陷管理工具

  • 之前提到的用例管理工具同样适用缺陷管理:
1、PingCode;2、TestRail;
3、TestLink;4、Jira;
5、PractiTest;6、PractiTest;
7、Zephyr Enterprise;8、MeterSphere;
9、Bugzilla、10、ZenTao
  • 我们看个工具吧,比如TAPD
    在这里插入图片描述
  • 缺陷的创建:
    在这里插入图片描述
  • 一个简单的缺陷流程:
    在这里插入图片描述

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

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

相关文章

西南科技大学(数据结构A)期末自测练习四

一、填空题(每空1分,共10分) 1、树最适合用来表示( C ) A.有序数据元素 B.无序数据元素 C.元素之间具有层次关系的数据 D.元素之间具有多对多关系的数据 2、根据二叉树的定义可知二叉树共有( B)种不同的基本形态…

react 面试题 50题 大公司常问的面试

1. 请解释 React 是什么以及它的主要特点。 2. 请解释 React 中的虚拟 DOM(Virtual DOM)以及它的工作原理。 3. 请解释 React 中的组件(Components)以及它们如何工作。 4. 请解释 React 中的生命周期方法(Lifecycle Me…

Zabbix监控openstack系统资源

一、简介 随着信息技术的不断发展,作为基础平台,封闭架构带来不兼容性,无法支持异构虚拟机系统,也难以支撑开放合作的产业链需求。随着云计算时代的来临,虚拟化管理平台向开放平台架构转变,多种厂家的虚拟机可以在开放的平台架构下共存,不同的应用厂商可以基于开放…

12.1平衡树(splay),旋转操作及代码

平衡树 变量定义 tot表示结点数量,rt表示根的编号 v[i]表示结点i的权值 fa[i]表示结点i的父亲节点 chi[i][2]表示结点i的左右孩子 cnt[i]表示结点i的权值存在数量,如1123,v[3]1,则cnt[3]2;就是说i3的三号结点的权值为1&…

备忘录模式-C++实现

备忘录是一种行为型设计模式,它允许在不破坏封装性的前提下捕获和恢复一个对象的内部状态。它将对象的内部状态保存到备忘录对象中,并在需要的时候从备忘录中取出恢复状态,实现了状态的保存和恢复。 备忘录有以下三个角色: 1、发…

Mybatis-Plus条件构造器Wrapper

常用的两种条件构造器分别是 QueryWrapper 和 LambdaQueryWrapper QueryWrapper Autowiredprivate StudentMapper studentMapper;Testpublic void test() {//条件分页查询学生,性别为2(代表女),年龄大于等于12的学生QueryWrapper&…

树和二叉树的基本概念和堆的实现

树的概念及结构 树的概念 树是一种非线性的数据结构,它是由n(n>0)个有限结点组成一个具有层次关系的集合。把它叫做树是因为它看起来像一棵倒挂的树,也就是说它是根朝上,而叶朝下的。 1.有一个特殊的结点&#…

04-配置远程仓库的SSH免密登陆

配置SSH免密登录 配置步骤 创建好的远程仓库也可以使用SSH的方式进行访问,但如果没有配置公钥会有警告 第一步: 删除用户家目录下的.ssh目录,如果没有该目录或者该目录下已经有密钥了就不用执行该操作 #进入当前用户的家目录,删除.ssh 目录 LayneLAPTOP-Layne MINGW64 ~ $ r…

python datetime 获取特定一天的后一天或者后几天

这里写自定义目录标题 1 获取特定天的时间对象 具体时间格式参考:Python time strptime()和strftime()-CSDN博客 import datetimetimer datetime.datetime.strptime(date, "%Y-%m-%d")2 获取下一天或者【下x天】的数据并进行格式转换 # 下一天数据 ne…

基于SpringBoot+Vue的前后端分离的房屋租赁系统2

✌全网粉丝20W,csdn特邀作者、博客专家、CSDN新星计划导师、java领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ 🍅文末获取项目下载方式🍅 一、项目背景介绍: 开发过程中&#xff0…

uniApp打包的手机app如果用户没开启通知权限、引导用户开启

封装一个setPermissions.js文件 /*** 如果用户没开启通知权限、引导用户开启 */ export function setPermissions() {// #ifdef APP-PLUS if (plus.os.name Android) {var main plus.android.runtimeMainActivity();var pkName main.getPackageName();var uid main.getApp…

基于WebSocket实现客户聊天室

目录 一、实现聊天室原理 二、聊天室前端代码 三、聊天室后端代码(重点) 四、聊天室实现效果展示 一、实现聊天室原理 1.1 介绍websocket协议 websocket是一种通信协议,再通过websocket实现弹幕聊天室时候,实现原理是客户端首…

Dynamo初学配置

配置参考 视频参考 Dynamo之Python编程视频教学_dynamo python-CSDN博客 升级Python3参考【需要Revit2020版本,2019版本不适用】 Dynamo 升级使用 Python3教程_dynamo升级找不到cpython-CSDN博客 Dynamo数据淘金——01//升级配置Dynamo - 哔哩哔哩 dynamo中pyt…

【动态规划】LeetCode-931.下降路径最小和

🎈算法那些事专栏说明:这是一个记录刷题日常的专栏,每个文章标题前都会写明这道题使用的算法。专栏每日计划至少更新1道题目,在这立下Flag🚩 🏠个人主页:Jammingpro 📕专栏链接&…

jira配置https访问-running-jira-applications-over-ssl-or-https

命令行配置步骤 Command line installation 过程说明: 创建存放证书的本地秘钥库keystore文件jira.jks,生成证书签名请求文件csr.txt或者jira.csr; 自签名,生成密钥和根证书; 使用根证书ca.crt对csr.txt进行签名&…

求二叉树叶子结点个数或求二叉树非叶子结点个数。

题目描述&#xff1a;求二叉树叶子结点个数。 分析&#xff1a; 考虑递归和非递归两种方法 <1>递归 int Leaves(BiTree T){if(T NULL)return 0;if(T->lchild NULL && T->rchild NULL)return 1;elsereturn Leaves(T->lchild) Leaves(T->rchild…

服务器基础知识

服务器被誉为互联网之魂。我第一次见到服务器是在学校图书馆&#xff0c;是一种机架式服务器&#xff0c;第二次见到服务器是在公司机房。本期文章是对服务器进行大盘点和梳理&#xff0c;会介绍我拆装服务器过程&#xff0c;从中的学习感悟。 图片来自 Pexels 01 服务器 服务…

TCP网络常见名词

1、MAC地址 用来识别同一链路中不同的计算机。 2、IP地址 用来识别TCP/IP网络中互连的主机和路由器。 3、端口号 用来识别同一台计算机中进行通信的不同应用程序。 1&#xff09;端口号如何确定 <1>标准既定的端口号 它是指每个应用程序都有其指定的端口号。例如…

vue---消息订阅与发布(pubsub)

一种组件间通信的方式&#xff0c;适用于任意组件间通信 使用步骤&#xff1a; 安装pubsub&#xff1a;npm i pubsub-js 引入&#xff1a;import pubsub from pubsub-js 接收数据&#xff1a;A组件想接收数据&#xff0c;则在A组件中订阅消息&#xff0c;订阅的回调留在A组…

VSCode 开发C/C++实用插件分享——codegeex

VSCode 开发C/C实用插件分享——codegeex 一、codegeex 一、codegeex CodeGeeX 智能编程助手是一款编程插件&#xff0c;CodeGeeX支持多种主流IDE&#xff0c;如VS Code、IntelliJ IDEA、PyCharm、Vim等&#xff0c;同时&#xff0c;支持Python、Java、C/C、JavaScript、Go等多…