测试基础12:测试用例设计方法-边界值分析

课程大纲

 

4e0e9828c0e839edd58355101e2596d4.png

 

1、定义

        经验发现,较多的错误往往发生在输入或输出范围的边界上,因为边界值是代码判断语句的点,一般容易出问题(数值写错、多加或丢失等号、写错不等号方向…)。所以增加对取值范围的边界数据的测试,即“边界值分析法”。

        边界值分析法是一种常用的黑盒测试方法。

2、应用场景

        1.有数据输入的地方就能用。

        2.针对一个输入控件(如输入框)。

        3.通常和有效等价类一起使用,作为用例的完善和补充。

3、意义

        完善和补充测试场景。

        一举两得:通过测试边界值,即可验证该等价类数据集输入后,功能无误。既测试了等价类,又保证了错误率高的边界场景。

4、划分

4.1边界

        如果是只有一个边界,则只有一个边界点,开或闭,即边界点无法取到或可取到。

        如果是双边界,边界开闭具体分为:全闭区间、全开区间、左开右闭、左闭右开。举例如下图:

 

0b3786f179a8db1d038a9d07dd29de06.png

 

4.2边界分析

        关于边界,需要关注的点有3种:上点、内点、离点。

        上点:边界上的点。(不管是开区间还是闭区间)

         内点:在域范围内的任意一点。(内点不是一个特定的点,是任意的某个点。一般选中心点)

        离点:离上点最近的一个点。

        关于离点:

        1.开区间,离点在区间内;闭区间,离点在区间外。

        2.取值范围是整数,离点是整数;取值范围包含小数,离点按照精度取最接近上点的数。

        以双边界为例,我们分别标出开区间和闭区间的上点、内点、离点。举例如下:

 

12669d5f8ab249556d4e9e23d7ad7397.png

5、设计步骤

        step1.划分等价类:根据等价类划分法步骤设计用例。

        step2.根据等价类,增加边界值。

        step3.根据边界值,修改或增加用例:

        ①已有用例所在数据集和边界值有交集的,原为随意取的值,改为边界点(上点、内点、离点)数值。如此,一条用例可实现对2个或多个测试点的验证。

        ②已有用例中没有取到的数据,新增一条用例。

举例1 

 

8bb4ad0916d58c009d32cdcbeb084f8c.png

举例2

 

363b611889eb3ab79a4f112a20d075ae.png

6、说明

        学会后,实际使用过程中,可以按照从里到边界到外顺序设计测试用例:

        1.即有效等价类-内点、

        2.有效等价类-可取到的边界值、

        3.无效等价类-离边界值最近的无效数值、

        4.其他无效等价类。

 

附:课程完整思维导图

 

28d4fd9323acc78a02c56b537e913f0e.jpeg

 

 

 

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Vue3父组件如何访问子组件属性和方法

本篇内容主要是父组件如何访问子组件的属性和方法 文章目录 子组件 //son.vue代码const list (info) >{console.log(info) }const name ref("XXXX")//子组件向父组件暴露了一个方法,然后父组件就可以去使用子组件里面的一些属性和方法了 //子组件向…

车载电子电气架构 - 智能座舱技术及功能应用

我是穿拖鞋的汉子,魔都中坚持长期主义的汽车电子工程师。 老规矩,分享一段喜欢的文字,避免自己成为高知识低文化的工程师: 屏蔽力是信息过载时代一个人的特殊竞争力,任何消耗你的人和事,多看一眼都是你的不对。非必要不费力证明自己,无利益不试图说服别人,是精神上的节…

【Vue】请求动态渲染数据

目标 请求获取数据存入 vuex, 映射渲染 安装 axios yarn add axios准备actions 和 mutations App.vue页面中调用 action, 获取数据 验证数据是否存储成功 动态渲染 cart-item.vue

第2回 从0x7c00到0x90000

将数据段寄存器ds的值变成了0x07c0,方便了之后访问内存时利用这个段基址进行寻址,接下来,我们带着这两行代码继续往下看6行: 此时ds寄存器的值已经是0x07c0了,然后用同样的方式将es寄存器的值变成0x9000,接着又把cs寄存器的值变成256。 好的,此时ds,es,cx寄存器的值,都…

Vue学习|Vue快速入门、常用指令、生命周期、Ajax、Axios

什么是Vue? Vue 是一套前端框架,免除原生JavaScript中的DOM操作,简化书写 基于MVVM(Model-View-ViewModel)思想,实现数据的双向绑定,将编程的关注点放在数据上。官网:https://v2.cn.vuejs.org/ Vue快速入门 打开页面&#xff0…

vue-cli是什么?和 webpack是什么关系?

前言 Vue CLI是Vue.js项目的官方脚手架,基于Node.js与Webpack构建。安装Vue CLI前需确保Node.js已安装,随后通过npm全局安装。Vue CLI能迅速创建和管理Vue.js项目,提升开发效率。而Webpack则负责资源打包,通过配置文件管理依赖、插…

【LeetCode算法】第112题:路径总和

目录 一、题目描述 二、初次解答 三、官方解法 四、总结 一、题目描述 二、初次解答 1. 思路:二叉树先序遍历。首先访问根节点,若根节点是叶子节点并且值等于目标值,则返回true,否则递归访问左子树和右子树,只要左…

归并排序的递归与非递归实现

递归实现 归并排序有点类似于二叉树的后序遍历,是一种基于分治思想的排序算法。具体过程如下: 但要注意,在归并时要额外开辟一个与原数组同等大小的空间用来存储每次归并排序后的值,然后再拷贝到原数组中。 代码实现&#xff1a…

Java学习-JDBC(四)

连接池 现有问题 每次操作数据库都需要重新获取新连接,使用完毕后需close释放,频繁的创建和销毁造成资源浪费连接的数量无法把控,对服务器造成巨大压力 连接池 连接池是数据库连接对象的缓冲区,通过配置,由连接池负…

[word] word悬挂缩进怎么设置? #经验分享#职场发展#经验分享

word悬挂缩进怎么设置? 在编辑Word的时候上方会有个Word标尺,相信很多伙伴都没使用过。其实它隐藏着很多好用的功能,今天就给大家分享下利用这个word标尺的悬挂缩进怎么设置,一起来看看吧! 1、悬挂缩进 选中全文&…

C语言详解(文件操作)1

Hi~!这里是奋斗的小羊,很荣幸您能阅读我的文章,诚请评论指点,欢迎欢迎 ~~ 💥💥个人主页:奋斗的小羊 💥💥所属专栏:C语言 🚀本系列文章为个人学习…

C++:SLT容器-->deque

C:SLT容器-->deque 1. 构造函数2. deque 赋值操作3. deque 大小操作4. deque 插入和删除5. deque 容器数据存取6. deque 排序操作 双端数组&#xff0c;可以对头部和尾部进行插入删除操作 需要导入头文件#include <deque> 1. 构造函数 deque deqT; // 默认构造函数 de…

⌈ 传知代码 ⌋ 深度知识追踪

&#x1f49b;前情提要&#x1f49b; 本文是传知代码平台中的相关前沿知识与技术的分享~ 接下来我们即将进入一个全新的空间&#xff0c;对技术有一个全新的视角~ 本文所涉及所有资源均在传知代码平台可获取 以下的内容一定会让你对AI 赋能时代有一个颠覆性的认识哦&#x…

Ruoyi5.x RuoYi-Vue-Plus新建Translation翻译类

若依框架&#xff08;RuoYi&#xff09;中的Translation翻译类主要作用在于实现字段值的转换或翻译功能&#xff0c;以提高数据展示的准确性和友好性。以下是其具体作用的一些关键点&#xff1a; 字段值转换&#xff1a;若依框架在处理数据时&#xff0c;有时需要将某些字段的…

【Linux多线程】线程的终止、等待和分离

文章目录 线程终止正常退出return 退出pthread_exit函数终止线程 pthread_cancel强制终止线程进程终止 线程等待为什么需要等待线程&#xff1f;pthread_join函数 分离线程pthread_detach函数 线程终止 下面给出终止线程的三种方式&#xff1a; 正常退出&#xff1a; 线程执行…

小冬瓜AIGC 手撕LLM 拼课

小冬瓜aigc手撕LLM学习 官方认证 手撕LLMRLHF速成班-(附赠LLM加速分布式训练超长文档&#xff09; 帮助多名同学上岸LLM方向&#xff0c;包括高校副教授&#xff0c;北美PhD&#xff0c;大厂等 课程名称【手撕LLMRLHF】 授课形式&#xff1a;在线会议直播讲解课后录播 时间&…

祝大家端午节安康

五月到端午&#xff0c;愿你端来快乐&#xff0c;无烦无恼&#xff1b;端来好运&#xff0c;无时无刻&#xff1b;端来健康&#xff0c;无忧无虑&#xff1b;端来财富&#xff0c;五谷丰登&#xff1b;端来祝福&#xff0c;五彩缤纷。端午节安康&#xff01;

记录一次被谷歌封号后又解封的过程

先提前恭祝2024年所有参加高考的学子们都能金榜题名&#xff0c;会的全对&#xff0c;不会的蒙的全对&#xff01; 一、背景 众所周知&#xff0c;谷歌、ios应用市场对app的审查都是极其严格的&#xff0c;开发者稍有不慎就会被谷歌下架应用&#xff0c;乃至封号。我们公司是做…

Linux:冯·诺依曼体系结构和操作系统

文章目录 冯诺依曼体系结构操作系统概念操作系统的作用定位机制操作系统如何管理硬件 冯诺依曼体系结构 我们常见的计算机&#xff0c;如笔记本。我们不常见的计算机&#xff0c;如服务器&#xff0c;大部分都遵守冯诺依曼体系。 截至目前&#xff0c;我们所认识的计算机&…

【Python】在【数据挖掘】与【机器学习】中的应用:从基础到【AI大模型】

目录 &#x1f497;一、Python在数据挖掘中的应用&#x1f495; &#x1f496;1.1 数据预处理&#x1f49e; &#x1f496;1.2 特征工程&#x1f495; &#x1f497;二、Python在机器学习中的应用&#x1f495; &#x1f496;2.1 监督学习&#x1f49e; &#x1f496;2.2…