第三章:boundary-value analysis

news2024/12/28 23:15:28

文章目录

  • Boundary-value Analysis
    • computational faults 计算错误
    • boundary shift 边界偏移
    • boundary value analysis 的优势
    • Path condition, domain, and domain boundary (路径条件、域和域边界)
    • Open and closed boundaries (闭合边界 / 开放边界)
    • on / off point
    • Guidelines
      • triangle 的例子
      • 多个变量的 domain (Domains with Multiple Variables)
    • 检测边界偏移
      • 不等式情况
      • 等式情况

Boundary-value Analysis

  • 边界值分析是在等价类划分的基础上进行的,其目的是为了找到更好的 test cases
    在这里插入图片描述
    在这里插入图片描述
  • 边界条件是应用于输入等价类输出等价类 的边界上方、下方和直接上的谓词。
  • 直观地说,边界值分析旨在选择测试用例 以探索程序的边界条件。边界值分析和输入划分密切相关。它们都利用了一个思想,即等价类中的每个元素应该在程序中执行相同的路径。然而,边界值分析是基于这样一种理论:如果程序员在程序逻辑上犯了错误,导致某些等价类中的输入执行了不正确的路径,则 这些错误通常会发生在等价类之间的边界上,因为这些边界与流程控制结构(如if语句和while循环)有关。

computational faults 计算错误

  • computational faults是在程序中发生的一种故障;例如,算术计算或字符串处理错误
    在这里插入图片描述
    在这里插入图片描述

boundary shift 边界偏移

  • 边界偏移: 边界偏移是指分支语句中的谓词不正确,从而有效地“偏离”了其预期位置。
    在这里插入图片描述
    在这里插入图片描述

  • 上述例子的边界就偏移了 1 个值(从不包括 10 到了包括 10)

  • 如果我们任意选择等价类的值,比如一个长度为 5 的列表和一个长度为15 的列表,那么我们的测试将无法发现上述错误。

  • 许多故障是由于边界条件引入了边界偏移,因为程序员要么:

    • (1)对输入条件的正确边界不确定;
    • 或者(2)错误地测试了边界。

boundary value analysis 的优势

  • 在边界上进行的测试既可以检测到 计算故障 又可以检测到 边界偏移,而远离边界缺陷的测试只能检测到计算故障。
  • 边界值分析需要从等价类的边缘或接近等价类的位置 选择 一个或多个测试用例,而等价划分只需要任何一个等价类中的元素即可。边界值分析还要求从输出条件派生出测试用例。这与通常只考虑输入域的等价划分不同。
    在这里插入图片描述

Path condition, domain, and domain boundary (路径条件、域和域边界)

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

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

相关文章

浅析LiveMedia智能视频网关的AI识别技术及应用场景

一、行业背景 (1)AI技术在安防领域大量落地应用 随着近几年人工智能的快速发展,深度学习方法及性能日益提升,计算机视觉、图像处理、视频结构化和大数据分析等技术也不断完善,使得安防产品逐步走向智能化。在技术成熟…

redis五种数据类型

Redis支持五种数据类型:string(字符串),hash(哈希),list(列表),set(集合)及zset(sorted set:有序集合)。 1.String&#…

Rust结构体和枚举类

文章目录 元组结构体结构体枚举类 Rust初步上手⚙所有权 元组结构体 元组结构体是最简单的结构体,可以粗暴地理解为是有名字的元组,二者的区别如下。 let tup: (i32, f64, u8) (500, 6.4, 1);struct Test(i32, f64, u8); let t Test(500,6.4,1)第一…

操作系统——文件在外存中的分配方式(王道视频p61 P62)

1.总体概述: 连续分配 —— 链接分配 —— 索引分配 (1)对于顺序分配,这种方式 基本不会使用了, 因为 它存在一个 核心的问题就是 没法更新;不过,还是要注意它的 “文件目录”——其中存放了…

Memcached构建缓存服务器

Memcache介绍 1、特点 内置存储方式----------为了提高性能,memcached中保存的数据都存储在memcache内置的内存存储空间中。由于数据仅存在于内存中,重启操作系统会导致全部数据消失 简单key/value存储--------------服务器不关心数据本身的意义及结构&…

NSSCTF web刷题记录4

文章目录 [NSSRound#4 SWPU]1zweb(revenge)[强网杯 2019]高明的黑客[BJDCTF 2020]Cookie is so subtle![MoeCTF 2021]fake game[第五空间 2021]PNG图片转换器[ASIS 2019]Unicorn shop[justCTF 2020]gofs[UUCTF 2022 新生赛]phonecode[b01lers 2020]Life On Mars[HZNUCTF 2023 f…

【qemu逃逸】GACTF2020-babyqemu

前言 虚拟机用户名:root 无密码 设备逆向 题目去掉的符号,经过逆向分析,实例结构体如下: 可以看到 arr_int_8 数组后面存在一个函数指针,不用想基本上就是劫持该函数指针了。 denc_mmio_read 函数 这里存在越界读…

.net core 到底行不行!超高稳定性和性能的客服系统:性能实测

业余时间用 .net core 写了一个升讯威在线客服系统。并在博客园写了一个系列的文章,介绍了这个开发过程。 我把这款业余时间写的小系统丢在网上,陆续有人找我要私有化版本,我都给了,毕竟软件业的初衷就是免费和分享,后…

最新知识付费变现小程序源码/独立后台知识付费小程序源码/修复登录接口

最新知识付费变现小程序源码,独立后台知识付费小程序源码,最新版修复登录接口。 主要功能 会员系统,用户登录/注册购买记录 收藏记录 基本设置 后台控制导航颜色 字体颜色 标题等设置 流量主广告开关小程序广告显示隐藏 广告主审核过审核…

VS2022创建win32汇编项目

文章目录 一、下载安装win32环境1.1、下载网址:https://masm32.com/1.2、解压缩安装1.3、安装路径1.4、安装masm32 SDK1.5、安装成功1.6、导入lib1.7、配置默认,可以根据自己需求修改1.8、启动界面二、vs2022 安装过程略过。。。2.1、创建项目2.2、填写项…

高通Android 8.1 扫码枪无法扫sn包含2或者全部是2的问题

背景:由于近期工厂生产,测试突然反馈扫码枪扫sn总是丢失2,比如 AXB2SHS822009997/LSXG 结果显示是 AXBSHS800997/LSX 于是我叫测试找了之前可以版本然后抓日志进行对比发现,确实只有2这个数字无法扫,如果把2这一位改成…

California Science Museum

文章目录 1. University of Southern California(USC)2. NASA航天飞机3. 返回舱4. Others彩蛋1: Paris, capital of France彩蛋2: Switzerland(瑞士)1. University of Southern California(USC) 2. NASA航天飞机

运动耳机品牌排行榜,推荐几款优秀的运动耳机

​说起耳机,相信大家都比较熟悉,特别是对于喜欢运动的爱好人士来说,那更是随身携带着。随着运动耳机的增长,大家都不知道该如何选择了。对于运动耳机除了需要佩戴稳固舒适之外,还有就是音质表现、防水性能、通话质量等…

外汇天眼实勘功能升级,带你沉浸式“云”穿交易商现场!

最近,外汇天眼新出了一个功能,这个功能可了不得了,不管你在国外还是在国内,它都能带你走进交易商现场。不过在介绍该功能之前,天眼君先问大家几个问题:在进行外汇交易前,你对自己的交易平台了解…

项目启动∣得益乳业引进企企通采购供应链管理+智采商城平台,切实提升供应链效率

近日,山东得益乳业股份有限公司(以下简称“得益乳业”)与企企通成功召开采购供应链管理智采商城双项目启动会。双方高层领导及项目团队关键成员,一同出席本次启动会。 本次合作以企企通数字化采购解决方案为基础,结合得…

基于 golang 从零到一实现时间轮算法 (三)

引言 本文参考小徐先生的相关博客整理,项目地址为: https://github.com/xiaoxuxiansheng/timewheel/blob/main/redis_time_wheel.go。主要是完善流程以及记录个人学习笔记。 分布式版实现 本章我们讨论一下,如何基于 redis 实现分布式版本的…

Java零基础手把手保姆级教程_类和对象(超详细)

文章目录 Java零基础手把手保姆级教程_类和对象(超详细)1. 类和对象1.1 类和对象的理解1.2 类的定义1.3 对象的使用1.4 学生对象-练习1.5测测你掌握了没? 2. 对象内存图2.1 单个对象内存图2.2 多个对象内存图2.3 多个对象指向相同内存图 3. 成…

从首届中国测绘地理信息大会,解读2023年度国产GIS创新关键词

创新是什么?这是各行各业持续思考的问题。 第一届中国测绘地理信息大会已进入倒计时!这是中国测绘学会、中国地理信息产业协会和中国卫星导航定位协会共同主办的全国性高端盛会。据悉,本次大会将有1个主论坛、38场分论坛,近2万平…

YOLOv8改进有效涨点系列->多位置替换可变形卷积(DCNv1、DCNv2、DCNv3)

本文介绍 这篇文章主要给大家讲解如何在多个位置替换可变形卷积,它有三个版本分别是DCNv1、DCNv2、DCNv3,在本篇博文中会分别进行介绍同时进行对比,通过本文你可以学会在YOLOv8中各个位置添加可变形卷积包括(DCNv1、DCNv2、DCNv3)&#xff0…

【每日OJ题—— 142. 环形链表 II (链表)】

每日OJ题—— 142. 环形链表 II (链表) 1.题目:142. 环形链表 II 2.方法讲解2.1.解法一:2.1.1.图文解析2.1.2.代码实现2.1.3.提交通过展示 2.2解法二:2.2.1图文解析2.2.2代码实现2.2.3.提交通过展示 1.题目:142. 环形链…