当前位置: 首页 > news >正文

黑盒测试过程中【测试方法】讲解1-等价类,边界值,判定表


在黑盒测试过程中,有9种常用的方法:
1.等价类划分

2.边界值分析

3.判定表法

4.正交实验法

5.流程图分析

6.因果图法

7.输入域覆盖法

8.输出域覆盖法

9.猜错法

我们一般用第1种和第2种方法最多。此处简单介绍一下这两种方法,详细介绍其他7种方法。

1.等价类划分


等价类分为:有效等价类,无效等价类。

我们举例说明:

 一个年龄输入框,年龄age必须是18-40岁(包含18,不包含40)。(此处忽略数值类型,假设用户只会输入整数)

根据条件,我们可以判断age的范围:18<=age<40
有效等价类:18<=age<40
无效等价类:age<18和age>=40


我们测试的时候在有效等价类和无效等价类中分别都要取数据验证,使得测试尽量完整、充分。

当然,此处我是假设的用户只会输入整数以便理解该方法。
但是在实际过程中,往往不会跟设想一致。

下面列举几个其他例子:
1.【1,2,3,4】取其中任意一个值
        可以分为4个有效等价类和1个无效等价类


2.bool值(真/假)
        可以分为1个有效等价类和1个无效等价类


3.设定条件

条件:密码为字母+数字的组合。


        分析:键盘可输入:字母、数字、字符


        有效等价类:字母+数字。
        无效等价类就很多了,简单列举几个:
        任意一种:纯字母、纯数字、纯字符
        两两组合:字母+字符,数字+字符
        三个组合:字母+数字+字符
        空
        。。。。。。


 2.边界值分析


边界值分析法一般和等价类划分法一起使用。

区别在于:
等价类划分是划分有效等价类和无效等价类,从2个类中取值。
边界值分析法就是对其中的边界点进行取值,以免程序在边界点发生问题。

还是那个例子:

一个年龄输入框,年龄age必须是18-40岁(包含18,不包含40)。(此处忽略数值类型,假设用户只会输入整数)

我们已经分析出age的范围:18<=age<40,边界值就是18和40。

不过在测试过程中,我一般会对边界值左右非常接近的值进行验证,也就是17,19;39,41。
其他的例子还有很多:
        1.浏览器的四个角,4个边框
        2.不同数值类型的边界(int,double等等)
        。。。。。。


3.判定表法

定义:对于给出的条件,列出所有可能的组合,形成判定表。

适用场景:
1.多种互不影响的条件不同的取值,分别执行不同的操作
2.需求就是判定表的形式
3.条件项和动作项都不多的情况下

判定表有4个部分:
        a.条件项
        b.条件值
        c.动作项
        d.动作值

举例:

买电影票。
周三下午,情侣购票:女生免票。(刷卡优惠:女生免票)
周三下午,其余人购票:刷卡8折。

条件项:周三下午,刷卡,情侣
动作项:8折,女生免票,全票
值:0,1


画判定表:

条件周三下午1111
刷卡1111
情侣1111
动作8折1
女生免票11
全票11111

这种方法非常清晰地列出了所有的测试项,但是当条件项和动作项比较多的时候非常繁琐。

未完待续~
 

相关文章:

黑盒测试过程中【测试方法】讲解1-等价类,边界值,判定表

在黑盒测试过程中&#xff0c;有9种常用的方法&#xff1a;1.等价类划分 2.边界值分析 3.判定表法 4.正交实验法 5.流程图分析 6.因果图法 7.输入域覆盖法 8.输出域覆盖法 9.猜错法 我们一般用第1种和第2种方法最多。此处简单介绍一下这两种方法&#xff0c;详细介绍其…...

函数栈帧的创建和销毁

文章目录 main函数栈帧的创建为什么局部变量的值是随机值函数是怎么传参的?传参的顺序是什么?函数调用结束是怎么返回的 main函数栈帧的创建 先在栈帧里面为main函数开辟出一块空间,且这块空间由两个寄存器esp和ebp来进行维护,当在调用另一个函数时这两个寄存器就去维护为这…...

测试Ocr工具IronOCR(续:编写图片圈选程序)

上一篇文章学习了IronOCR的基本用法之后&#xff0c;计划做一个加载本地图片后&#xff0c;从图片中圈选某一位置的文字&#xff0c;然后调用IronOCR识别圈选区域文本的程序。本文实现从本地加载图片并完成圈选的功能。   主要的功能包括以下几点&#xff1a;   1&#xff…...

React之Redux的使用

文章目录 Redux 介绍概述Redux 是什么&#xff1f;为什么要使用 Redux&#xff1f;我什么时候应该使用 Redux&#xff1f;Redux 库和工具React-ReduxRedux ToolkitRedux DevTools 扩展 Redux 术语和概念State 管理不可变性 Immutability术语ActionAction CreatorReducerReducer…...

数据库系统概论--第五章课后习题

1.什么是数据库的完整性&#xff1f; 答&#xff1a;数据库的完整性是指数据的正确性和相容性。 2. 数据库的完整性概念与数据库的安全性概念有什么区别和联系&#xff1f; 答&#xff1a; 数据的完整性和安全性是两个不同的概念,但是有一定的联系。前者是为了防止数据库中存…...

小程序开发费用估算:如何控制项目成本?

在当今数字化的时代&#xff0c;小程序已经成为了很多企业和个人开展业务的重要手段。小程序的开发需要耗费时间和资源&#xff0c;因此在项目初期&#xff0c;了解预计的开发费用是非常重要的。本文将详细介绍如何估算小程序开发费用以及如何控制项目成本。 小程序开发费用 …...

【22】linux进阶——文本处理工具:cut、awk、sed

大家好&#xff0c;这里是天亮之前ict&#xff0c;本人网络工程大三在读小学生&#xff0c;拥有锐捷的ie和红帽的ce认证。每天更新一个linux进阶的小知识&#xff0c;希望能提高自己的技术的同时&#xff0c;也可以帮助到大家 另外其它专栏请关注&#xff1a; 锐捷数通实验&…...

Web3D包装生产线 HTML5+Threejs(webgl)开发

生产线三维可视化解决方案就是通过物联网、虚实联动和三维建模等先进技术&#xff0c;以一个3D立体模型展现出来&#xff0c;可以让我们很直观的看到生产线的运作以及对数据的监控。3D运用数据孪生技术可以让工业3D物联网管理系统的界面变得非常的简单易看&#xff0c;并且能够…...

Docker数据管理

目录 一、数据管理方式 1、数据卷 在宿主机上写入数据&#xff0c;传到容器 2、数据卷容器 二、容器互联 一、数据管理方式 用户在使用Docker的过程中&#xff0c;往往需要能查看容器内应用产生的数据&#xff0c;或者需要把容器内的数据进行备份&#xff0c;甚至多…...

在PowerBuilder中更改窗口继承

在PowerBuilder中更改窗口继承 PowerBuilder是Sybase公司的独资子公司PowerSoft推出的应用于客户机/服务器体系结构下的应用程序开发工具,也是一种面向对象的图形化交互式开发工具。PowerBuilder 以其简洁高效的集成开发环境、 强大的数据窗口技术、几乎无所不能的数据库访问…...

CS:APP 第7章链接分步编译(cpp/cc1/as/ld)遇到的问题

环境 WSL Ubuntu 22.04.2 LTS gcc (Ubuntu 11.3.0-1ubuntu1~22.04) 11.3.0 问题 问题一 cc1 命令找不到 cc1 命令在 /usr/lib/gcc/x86_64-linux-gnu/11/cc1 里&#xff0c;注意不同操作系统等可能 cc1 的位置不一样&#xff0c;可以使用 find 或者 locate 命令搜索。 通过下…...

Jsp+sql智能道路交通信息管理系统的设计与实现(论文+系统+开题报告+答辩PPT+外文翻译)

伴随着社会经济的发展&#xff0c;交通在人们经济和社会活动中扮演着越来越重要的角色。因而&#xff0c;交通管理的水平和质量就和我们的日产生活紧密相连&#xff0c;并且直接影响着投资的环境和城市的面貌。因此&#xff0c;每个城市都做了很多关于改善交通和发展智能交通系…...

自动化工具 WEB 自动化工具

背景 使用自动化测试框架编写用例的时候&#xff0c;维护元素信息以及脚本较为麻烦。对应新手来说&#xff0c;编写脚本的能力有限&#xff0c;使用工具会更容易入手。最重要的是可视化操作让我觉得体验舒服。 演示地址 地址&#xff1a;hippo 账号&#xff1a;test 密码&am…...

AutoGPT 安装指南,使用避坑要点

最近&#xff0c; AIGC 中最火的可能就当属于 AutoGPT 了吧&#xff0c;首先简单介绍一下AutoGPT 背景 AutoGPT 是基于 ChatGPT API 接口开发&#xff0c;项目首推 GPT-4 模型&#xff0c;但 OpenAI 账号 API 只有 gpt-3.5-turo 权限同样也可以使用。 项目在 github 上获取的…...

低调且强大——JNPF低代码平台

前言 先说说很多人为什么要用低代码平台。大部分的反馈是“懒”&#xff0c;其次就是后台管理这东西吧&#xff0c;来来回回就那些东西&#xff0c;查询/表单/表格/弹窗之类的&#xff0c;加上一些增删改查的逻辑。很多人表示&#xff0c;呆过的公司好几家了&#xff0c;后管的…...

《商用密码应用与安全性评估》第二章政策法规2.4商用密码应用安全性评估工作

商用密码应用安全性评估体系发展历程 第一阶段&#xff1a;制度奠基期&#xff08;2007年11月至2016年8月&#xff09; 第二阶段&#xff1a;再次集结期&#xff08;2016年9月至2017年4月&#xff09; 第三阶段&#xff1a;体系建设期&#xff08;2017年5月至2017年9月&…...

MySQL 字段为 NULL 的5大坑,99%人踩过

数据库字段允许空值(null)的问题&#xff0c;你遇到过吗&#xff1f; 在验证问题之前&#xff0c;我们先建一张测试表及测试数据。 数据库字段允许空值(null)的问题&#xff0c;你遇到过吗&#xff1f; 在验证问题之前&#xff0c;我们先建一张测试表及测试数据。 构建的测试…...

深入理解计算机系统--理解编译器编译的过程

前言 大家在学习C语言的时候&#xff0c;相信对编译器这个词并不会感到陌生。我们也会知道编译器编译的过程是&#xff1a;预处理-》编译-》汇编-》链接。这篇文章主要介绍这四个过程中&#xff0c;编译器究竟做了那些工作&#xff0c;它是如何让一份高级程序转换成机器语言的…...

实现PXE批量网络装机及kickstrat无人值守安装(富士山终究留不住欲落的樱花)

一、PXE概述和部署PXE批量装机 1.PXE简介 PXE&#xff08;预启动执行环境&#xff0c;在操作系统之前运行&#xff09;是由Intel公司开发的网络引导技术&#xff0c;c/s架构&#xff0c;允许客户机通过网络从远程服务器下载引导镜像&#xff0c;并加载安装文件或者整个操作系统…...

4.23日报

MySQL 索引是怎么实现的&#xff1f; 索引是满足某种特定查找算法的数据结构&#xff0c;而这些数据结构会以某种方式指向数据&#xff0c;从而实现高效查找数据。 具体来说 MySQL 中的索引&#xff0c;不同的数据引擎实现有所不同&#xff0c;但目前主流的数据库引擎的索引都…...

深入浅出ASoC:用一张图看懂Machine、Platform、Codec在Android音频驱动中的分工与协作

深入浅出ASoC&#xff1a;用一张图看懂Machine、Platform、Codec在Android音频驱动中的分工与协作 在Android音频系统的开发中&#xff0c;ASoC&#xff08;ALSA System on Chip&#xff09;框架扮演着至关重要的角色。对于刚接触这一领域的开发者来说&#xff0c;理解Machine、…...

不止于配置:用Qt给周立功CAN卡写个简易数据收发测试工具(附源码)

从零构建Qt版CAN数据收发测试工具&#xff1a;周立功硬件实战指南 在嵌入式开发领域&#xff0c;CAN总线调试是工程师日常工作中的高频需求。当我们需要验证硬件连接是否正常、测试通信质量或快速检查数据流时&#xff0c;一个轻量级的图形化测试工具能极大提升工作效率。本文将…...

GD32F103 DAC输出不稳?排查DMA传输和定时器触发的5个常见坑点

GD32F103 DAC输出不稳&#xff1f;排查DMA传输和定时器触发的5个常见坑点 在嵌入式开发中&#xff0c;DAC&#xff08;数字模拟转换器&#xff09;的稳定输出对许多应用至关重要。然而&#xff0c;当使用GD32F103的DAC功能时&#xff0c;开发者常常会遇到输出波形不稳定、数据错…...

实战解析:如何用Qualcomm AI Engine Direct的OpPackage机制为你的AI模型添加自定义算子

深度实战&#xff1a;利用Qualcomm AI Engine Direct的OpPackage机制实现自定义算子全流程开发 在移动端AI模型部署的实践中&#xff0c;我们常常会遇到一个关键挑战&#xff1a;当模型包含特殊算子或自研算法时&#xff0c;如何在不修改底层框架的前提下实现高效执行&#xff…...

爬虫实战复盘:山东政务噪声数据逆向爬取踩坑全记录

爬虫实战复盘&#xff1a;山东政务噪声数据逆向爬取踩坑全记录 前言 近期在做全国各省市环境噪声实时数据爬虫、清洗、入库标准化项目&#xff0c;已经稳定跑通北京&#xff08;静态HTML&#xff09;、天津&#xff08;SM3国密签名接口&#xff09;两大站点。今天攻坚山东省噪声…...

七牛云:批量将标准存储文件转为归档直读存储

&#x1f4cb; 整体流程图 下载安装 qshell → 配置密钥 → 列出符合条件的文件 → 生成批量转换清单 → 执行转换建议先看看不同类型有何区别&#xff0c;选择适合自己的&#xff1a;存储类型_产品简介_对象存储 - 七牛开发者中心https://developer.qiniu.com/kodo/3956/kodo…...

告别黑白日志!用Xshell正则高亮集,让服务器报错、成功信息一目了然

告别黑白日志&#xff01;用Xshell正则高亮集&#xff0c;让服务器报错、成功信息一目了然 在运维和开发人员的日常工作中&#xff0c;与服务器打交道是家常便饭。无论是查看系统日志、调试应用程序&#xff0c;还是执行自动化脚本&#xff0c;我们都需要面对大量的命令行输出信…...

音视频开发避坑:YUV420P图像处理时Stride不对齐,你的内存拷贝为啥总出错?

音视频开发避坑&#xff1a;YUV420P图像处理时Stride不对齐&#xff0c;你的内存拷贝为啥总出错&#xff1f; 在音视频开发中&#xff0c;YUV420P格式因其高效的存储方式被广泛使用&#xff0c;但许多开发者在处理这类图像时&#xff0c;常常会遇到内存拷贝错误、程序崩溃或画面…...

CE修改器进阶:通过内存结构分析,破解‘敌我同源’的游戏逻辑(以浮点数血量为例)

CE修改器进阶&#xff1a;内存结构分析与游戏逻辑破解实战 游戏修改器一直是技术爱好者探索虚拟世界底层逻辑的利器。在众多工具中&#xff0c;Cheat Engine&#xff08;简称CE&#xff09;以其强大的内存扫描和调试功能脱颖而出&#xff0c;成为逆向工程领域的瑞士军刀。今天&…...

HCK代码实现原理:揭秘AI辅助学术分析的核心算法

HCK代码实现原理&#xff1a;揭秘AI辅助学术分析的核心算法 【免费下载链接】sala-do-futuro-script O HCK um script de anlise acadmica assistida por IA, projetado para auxiliar estudantes na resoluo de questes de tarefas e provas da plataforma sala do futuro. …...