软件质量保证与测试

目录

一、测试流程

二、测试用例

2.1概念

2.2用例编写格式

三、设计测试点

3.1等价类

3.1.1概念

3.1.2案例

3.1.3适用场景

3.1.4执行用例

3.2边界值

3.2.1概念

3.2.2案例

3.2.3使用场景

3.3判定表

3.3.1判定表使用原因

3.3.2概念

3.3.3案例

3.3.4使用场景

3.4场景法

3.4.1概念

3.4.2案例

3.4.3使用场景

四、缺陷管理

4.1概念

4.2缺陷编写

4.3缺陷管理工具

五、抓包

5.1抓包目的

5.2抓包概念

5.3抓包知识

5.4抓包工具


一、测试流程

需求分析:

说明:根据产品需求文档,提取出规则要求

提取规则要求的目的:

  • 明确软件有哪些功能和要求
  • 为设计测试点做准备

设计测试点:

测试点:要进行验证的点,根据需求规则设计测试点。

设计测试点的目的:

  • 防止测试时有遗漏
  • 为编写测试用例做准备

测试用例:

说明:将测试点转化为测试执行的文档。

编写用例的目的:

  • 指导测试点正确测试实施
  • 为执行测试做准备

用例执行:

说明:执行用例就是执行测试。

缺陷管理:

说明:当执行用例结果和预期结果不符时为缺陷,就需要对缺陷进行管理。

缺陷管理目的:

  • 测试的目的就是减少软件缺陷(提交缺陷——>等待修复——>验证缺陷)
  • 为测试报告做准备

测试报告:

说明:对于本次执行测试缺陷进行分析统计,对于本次测试实施进行总结。

主要内容:

  1. 缺陷统计
  2. 缺陷分析
  3. 遗留缺陷
  4. 测试总结

二、测试用例

2.1概念

用例:用户使用的案例

测试用例:执行测试时用户案例

英文:Test Case

目的:保证测试点的正确执行

2.2用例编写格式

说明:用例编写格式一般由八大要素组成。

编写示例

微信登录测试点:

  1. 登录成功
  2. 密码错误,登录失败

三、设计测试点

3.1等价类

3.1.1概念

3.1.2案例

(验证QQ账号的合法性)

要求:6~10位自然数

步骤:

1.明确需求

  • 内容:自然数(0、1、2······)
  • 长度:6-10位

2.确定有效和无效等价类

  • 有效等价:6-10位
  • 无效等价:①小于6位 ②大于10位 ③非自然数

3.提取数据编写测试用例

  • 有效等价:8位(12345678)
  • 无效等价:①小于6位——5位(12345) ②大于10位——11位(12345678901) ③非自然数

3.1.3适用场景

针对:需要有大量数据测试输入,但是没法穷举测试的地方。

  • 输入框
  • 下拉列表
  • 单选复选框

典型代表:页面输入框类测试

3.1.4执行用例
  • 当执行结果和预期结果不一致,则为缺陷。
  • 发现缺陷需要进行缺陷管理(提交——>开发修复——>测试验证——>关闭缺陷)

示例:(验证某城市电话号码正确性)

要求:

  1. 区号:空或者是三位数字
  2. 前缀码:非“0”且非“1”开头的三位数字
  3. 后缀码:四位数字

步骤:

1.明确需求

2.确定有效和无效等价类

3.提取数据编写测试用例

4.执行用例

3.2边界值

3.2.1概念

说明:选取正好等于、刚好大于、刚好小于边界的值作为测试数据。

边界值法设计用例步骤:

  1. 明确需求
  2. 确定有效和无效等价类
  3. 确定边界范围值
  4. 提取数据编写测试用例
3.2.2案例

需求:通过边界值法验证标题长度的合法性

要求:标题长度大于0,小于等于30个字符(0<标题长度<=30)

步骤:

1.明确需求

  • (0,30]

2.确定有效和无效等价类

  • 有效:4
  • 无效:-1,31

3.确定边界值

  • 上点:0,30
  • 离点:-1,1,39,31
  • 内点:10

4.提取数据编写用例

优化:

  • 上点:必选
  • 内点:必选
  • 离点:开内闭外

5.执行用例

3.2.3使用场景
  • 在等价类的基础上针对有边界范围的测试数据输入的地方(重点关注边界)
  • 常见词语描述:大小、尺寸、重量、最大、最小、至多、至少等修饰语
  • 典型代表:有边界范围的输入框类测试

示例:(验证QQ号的合法性)

要求:6~10位自然数

步骤:

1.明确需求

2.确定有效和无效等价类

3.确定边界值

4.提取数据编写用例

5.用例执行

3.3判定表

3.3.1判定表使用原因

案例:验证“若用户欠费或者关机,则不允许被叫”功能测试

说明:

  • 等价类、边界值分析法主要关注单个输入条件的测试
  • 并未考虑输入条件之间的各种组合、输入条件与输出结果之间有相互制约关系的测试
3.3.2概念

1.定义:是一种以表格形式表达多条件逻辑判断的工具

2.组成:

  • 条件桩:列出问题中的所有条件,列出条件的次序无关紧要。
  • 动作桩:列出问题中可能采取的操作,操作的排列顺序没有约束。
  • 条件项:列出条件对应的取值,所有可能情况下的真假值。
  • 动作项:列出条件项的各种取值情况下应该采取的动作结果。

3.规则

  • 判定表中贯穿条件项和动作项的一列就是一条规则
  • 假设有n个条件,每个条件的取值有两个(0,1),全组含有2的n次方种规则

4.判定表设计用例步骤

1.明确需求
2.画出判定表

列出条件桩和动作桩

填写条件项,对条件进行全组合

根据条件项的组合确定动作项

简化合并相似规则(有相同的动作)

3.根据规则编写测试用例
3.3.3案例

1.需求分析

  • 如果金额大于500元,又未过期,则发出批准单和提货单
  • 如果金额大于500元,但过期了,则不发批准单与提货单
  • 如果金额小于等于500元,则不论是否过期都发出批准单和提货单
  • 在过期的情况下不论金额大小还需要发出通知单

2.画判定表

3.设计测试用例

4.执行用例

3.3.4使用场景
  • 有多个输入条件,多个输出结果,输入条件之间有组合关系,输入条件和输出结果之间有依赖(制约)关系。
  • 判定表一般适用于条件组合数量较少的情况(比如4个条件以下)

示例:(文件修改规则)

1.明确需求

  • 输入的第一列字符必须是A或B
  • 第二列字符必须是一个数字
  • 如果第一列字符不正确,则给出信息L
  • 如果第二列字符不正确,则给出信息M
  • 如果两列字符输入正确,则修改文件成功

2.画判定表

3.设计测试用例

4.用例执行

3.4场景法

3.4.1概念

说明:场景法也可以叫做流程图法,是用流程图描述用户的使用场景,然后通过覆盖流程路径来设计测试用例。

意义:

  • 用户使用角度:用户平时使用的不是单个功能,而是多个功能组合起来进行使用。
  • 测试人员角度:平时测试的都是单个功能点进行测试,容易忽略多个功能的组合测试。
3.4.2案例

ATM机取款流程

ATM机取款流程——流程图

设计测试用例

 用例执行

3.4.3使用场景

根据实际的应用场景来测试业务用例可以使用场景法。

四、缺陷管理

4.1概念

1.定义:软件在使用过程中存在的任何问题都叫软件的缺陷,简称bug。

2.缺陷评判标准

3.缺陷产生原因

需求阶段:需求描述不易理解,有歧义、错误等

设计阶段:设计文档存在错误或者缺陷

编码阶段:代码出现错误

运行系统:软硬件系统本身故障导致软件缺陷

4.软件缺陷的生命周期:

5.软件缺陷的类型:

4.2缺陷编写

1.缺陷的核心内容

2.缺陷描述

案例:

3.缺陷的跟踪流程

4.缺陷的提交流程

5.缺陷的提交要素

6.提交缺陷的注意事项

4.3缺陷管理工具

1.禅道

禅道项目管理软件 - 开源、免费的项目研发测试管理工具 (zentao.net)icon-default.png?t=N7T8https://www.zentao.net/特点:

  • 国产、免费、开源、简单、轻量级
  • 三管融合(产品管理、项目管理、质量管理)

2.禅道的使用用户

3.禅道使用流程

五、抓包

5.1抓包目的

  • 功能测试时跳过ui界面验证,验证后端程序处理能力。(如:请求支付100元,通过抓包修改请求价格0.1元,查看后端程序是否能正常处理)
  • 分析前端bug还是后端bug。(如:ui显示数据错误,提交bug时需要指定提交人,那是提交给前端开发还是后端开发?)
  • 弱网测试(如:app应用模拟4G、3G网络)
  • 接口测试时,缺乏接口描述文档,需要抓包获取。(如:查看支付宝请求信息)

5.2抓包概念

说明:通过工具抓取前端与后端的通信内容

5.3抓包知识

  • 抓包操作(http、https)
  • 断点操作-拦截修改(请求、响应)
  • 弱网测试

5.4抓包工具

  • fidder(windows)断点、弱网、录制请求和响应
  • Charles(mac、windows)断点、弱网、录制请求和响应
  • 浏览器开发者工具(查看请求和响应首选)

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

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

相关文章

Day4: 两两交换链表中的节点 24 删除链表的倒数第N个节点 19 链表相交 02.07 环形链表II 142

题目24. 两两交换链表中的节点 - 力扣&#xff08;LeetCode&#xff09; /*** Definition for singly-linked list.* struct ListNode {* int val;* ListNode *next;* ListNode() : val(0), next(nullptr) {}* ListNode(int x) : val(x), next(nullptr) {}* …

新鲜出炉的信息化一机两用方案

在信息化日益发展的今天&#xff0c;网络安全问题愈发凸显其重要性。尤其是在政府和企事业单位中&#xff0c;如何在保证业务流畅和工作效率的同时&#xff0c;确保信息高安全性&#xff0c;成为了一个亟待解决的问题。而“一机两用”政策&#xff0c;正是针对这一需求而提出的…

QT布局管理(分割窗口QSplitter类、停靠窗口QDockWidget类、堆栈窗体QStackedWidget类、基本布局QLayout)

此片文章简单介绍布局管理的使用方法。通过实例先分别介绍分隔窗口QSplitter类、停靠窗口QDockWidget类及QStackedWidget类的使用&#xff0c;最后再通过一个实例介绍QLayout的使用。 分割窗口QSplitter类 分隔窗口可以灵活地布局窗口&#xff0c;可以用在文件资源管理器地窗…

【2024最新华为OD-C/D卷试题汇总】[支持在线评测] 任务积分优化问题(100分) - 三语言AC题解(Python/Java/Cpp)

🍭 大家好这里是清隆学长 ,一枚热爱算法的程序员 ✨ 本系列打算持续跟新华为OD-C/D卷的三语言AC题解 💻 ACM银牌🥈| 多次AK大厂笔试 | 编程一对一辅导 👏 感谢大家的订阅➕ 和 喜欢💗 📎在线评测链接 任务积分优化问题(100分) 🌍 评测功能需要 订阅专栏 后私信…

python数据可视化:在带有子图的绘图中添加总标题 matplotlib.pyplot.suptitle()

【小白从小学Python、C、Java】 【考研初试复试毕业设计】 【Python基础AI数据分析】 python数据可视化&#xff1a; 在带有子图的绘 图中 添加总标题 matplotlib.pyplot.suptitle() 请问关于以下代码表述正确的选项是&#xff1f; import matplotlib.pyplot as plt fig, (ax…

LiveMedia视频汇聚平台的设备管理功能

LiveMedia视频汇聚平台的设备管理功能是实现视频资源有效管理和控制的关键组成部分。以下是设备管理功能的详细介绍&#xff1a; 设备接入与管理&#xff1a; 设备添加与编辑&#xff1a;平台支持添加、编辑与删除设备&#xff0c;可编辑的信息包括设备接入的协议类型、服务节…

中小学校共用电脑通过安当SLA产品配置实现开机控制

中小学校公用电脑实现电脑开机控制的必要性主要体现在以下几个方面&#xff1a; 1. 增强安全性&#xff1a; 公用电脑由于使用频繁&#xff0c;容易被未经授权的用户访问&#xff0c;可能存在数据泄露或恶意软件植入的风险。通过实现电脑开机控制&#xff0c;学校可以确保只有…

游戏AI的创造思路-技术基础-深度学习(4)

下面的内容是让AI进行左右互博&#xff0c;这就是传说中的GAN对抗网络 当然&#xff0c;周伯通和GAN真的是难兄难弟&#xff0c;欲练神功&#xff0c;结果被黄药师&#xff08;欺骗&#xff09;坑了 目录 3.4. 生成对抗网络&#xff08;GAN&#xff09; 3.4.1. 定义 3.4.2.…

ThinkPad 进入BIOS推荐方法ThinkPad(ThinkCentre , ThinkStation)

ThinkPad 进入BIOS推荐方法ThinkPad&#xff08;ThinkCentre &#xff0c; ThinkStation&#xff09; 打开系统电源。在启动过程中&#xff0c;按Lenovo &#xff0c; ThinkPad &#xff0c; ThinkStation或ThinkCentre徽标上的F1 。 下图显示了示例BIOS屏幕。 注意&#xff…

PHPMailer发送的中文内容乱码如何解决

一&#xff1a; PHPMailer sdk 文件中有个设置默认编码的位置&#xff1a; vendor/phpmailer/phpmailer/src/PHPMailer.php 二&#xff1a; 实际业务代码中&#xff1a; require /sdk/PHPMailer/vendor/autoload.php;$mail new PHPMailer(true);try {//Server settings$mai…

免费!AI视频一键转绘,​哎哟不错哦~

前段时间给大家介绍过StreamV2V&#xff0c;它基于一种神奇的扩散模型&#xff0c;实现了视频到视频的一键转绘。今天带来StreamV2V视频一键转绘整合包&#xff0c;我只能“说哎哟不错哦”~ StreamV2V简介 你正在看一个视频&#xff0c;突然间&#xff0c;视频中的人物换了张脸…

WebSocket 连接失败的原因及解决方法

WebSocket 目前已经成为了一项极为重要的技术&#xff0c;其允许客户端和服务器之间进行实时、全双工的通信。然而&#xff0c;在实际项目中&#xff0c;开发者时常会遇到 WebSocket 连接失败的情况。这不仅影响了用户体验&#xff0c;还可能导致不可预见的系统错误或数据丢失。…

EE trade:利弗莫尔三步建仓法

在股市投资领域&#xff0c;利弗莫尔这个名字代表着无数的智慧和经历。他的三步建仓法成为了投资者们趋之若鹜的学习对象。本文将详细解析利弗莫尔的著名买入法&#xff0c;通过分步进攻方式&#xff0c;有效掌控市场并实现盈利。 一、利弗莫尔的三步建仓法详解 利弗莫尔三步…

ADS SIPro使用技巧之RapidScan-Z0

PCB走线的阻抗对每个网络的信号完整性至关重要&#xff0c;但是&#xff0c;验证每个信号是不切实际的&#xff0c;尤其对于设计复杂度很高的产品而言&#xff0c;设计者的有限精力只能用于关注关键的设计点&#xff0c;这一过程往往会造成一些设计的疏忽从而导致错误。 ADS SI…

Steam夏促时间 Steam夏促怎么参加外区的促销教程

steam6月28日开启&#xff0c;夏促也是一年中促销力度比较大的促销活动了&#xff0c;想要入手游戏的玩家&#xff0c;这也是一波很好的机会&#xff0c;预告中出现的游戏包括《幻兽帕鲁》《迪士尼梦幻星谷》《庄园领主》《群星》《猛兽派对》《蝙蝠侠&#xff1a;阿卡姆骑士》…

API-事件类型

学习目标&#xff1a; 掌握事件类型 学习内容&#xff1a; 事件类型鼠标事件焦点事件键盘事件文本事件focus选择器案例 事件类型&#xff1a; 鼠标事件&#xff1a; <title>事件类型-鼠标事件</title><style>div {width: 200px;height: 200px;background-c…

【sklearn基础入门教程】

&#x1f308;个人主页: 程序员不想敲代码啊 &#x1f3c6;CSDN优质创作者&#xff0c;CSDN实力新星&#xff0c;CSDN博客专家 &#x1f44d;点赞⭐评论⭐收藏 &#x1f91d;希望本文对您有所裨益&#xff0c;如有不足之处&#xff0c;欢迎在评论区提出指正&#xff0c;让我们共…

STM32HAL库--PWR低功耗实验(速记版)

电源控制&#xff08;PWR&#xff09;简介 电源控制部分&#xff08;PWR&#xff09;概述了不同电源域的电源架构以及电源配置控制器。PWR 的内容比较多&#xff0c;我们把它们的主要特性概括为以下 3 点&#xff1a; 电源系统&#xff1a;USB 稳压器、内核域(VCORE)、…

StarRocks 存算分离成本优化最佳实践

序言 StarRocks 存算分离借助对象存储来实现计算和存储能力分离&#xff0c;而存算分离版本 StarRocks 一般来说有以下三方面成本&#xff1a; 计算成本&#xff0c;也即机器使用成本&#xff0c;尤其是运行在公有云上时存储成本&#xff0c;该部分与对象存储上存储的数据量相…

探索SoMeLVLM:面向社交媒体处理的大型视觉语言模型

SoMeLVLM: A Large Vision Language Model for Social Media Processing 论文地址: https://arxiv.org/abs/2402.13022https://arxiv.org/abs/2402.13022发表在ACL 2024 1.概述 在线社交媒体平台涌现出海量的文本与视觉内容,深刻揭示了人们如何交流、互动以及自我表达。随着通…