黑盒测试方法

黑盒测试是一种软件测试方法,它通过向系统提供输入并检查输出结果来验证系统的功能是否符合需求。‌黑盒测试主要关注软件的功能性,而不是其内部结构或工作原理。以下是几种常见的黑盒测试顺序方法:

场景设计法‌:

        通过模拟实际使用场景来设计测试用例,这种方法能够生动地描绘出事件触发时的情景,使测试用例更容易理解和执行。

场景法就是模拟用户操作软件时的场景,主要用于测试系统的业务流程

基本流:按照正确的业务流程来实现的一条操作路径

备选流:导致程序出现错误的操作流程

 注意:需根据需求规格说明书(原型图+设计流程图)画出流程图这是必备条件,分析出基本流+备选流,根据不同场景构造场景列表已覆盖测试用例。

等价类划分法‌:

        这种方法将输入数据划分为若干个等价类,每个等价类包含一组具有相同功能的输入数据。测试时,从每个等价类中选择一个代表性数据进行测试,以验证系统的功能。‌

划分原则:

1.规定输入的取值范围或个数时,划分一个有效和两个无效;

比如:注册时,密码长度6-18位。

  • 两个无效等价类:小于6位字符,大于18位字符;
  • 一个有效等级类:6-12位字符。

2.规定了输入的集合或规则必须要遵循的条件,则划分一个有效和一个无效;

比如:注册时,账号需要字母开头。

一个无效等级类:无字母开头
一个有效等级类:有字母开头

3.输入条件是一个布尔值,则划分为一个有效和一个无效;

比如:注册时,需要勾选用户协议和隐私政策。

一个无效等级类:未勾选,则为Flase

一个有效等级类,已勾选,则为True

4.输入条件时一组数据,并且每一个输入的值做不同的处理,则划分若干个有效和一个无效;

比如:游戏充值时,VIP等级。

一个无效等级:未充值金额,没有VIP等级

若干有效等级:根据充值金额,划分VIP等级

5.输入条件规定了必须要遵循的某些规则下,则划分为一个有效和若干个无效;

比如:注册时,邮箱。

一个有效:输入字符中包含@

若干个无效:其他

6.不是所有的等价类都有无效等价类。

比如:注册时,必选项单选项,性别-男或女。

边界值分析法‌:

        这种方法专注于输入或输出的边界值进行测试。通常与等价类划分法结合使用,通过选择边界值附近的点作为测试数据来发现潜在的错误。‌

因果图(判定表的先行条件)‌:

      使用判定表来列出各种输入条件及其对应的输出结果,通过分析判定表来设计测试用例。

  • 条件桩:问题的所有条件
  • 动作桩:问题的所有输出
  • 条件项:针对条件桩的取值
  • 动作项:条件项的各种取值情况下的输出结果

正交实验设计法‌:

利用正交表来安排多因素实验,以减少测试用例的数量并提高测试效率。

注意:4种类型,3行数据,3^4=81种组合,考虑输入(条件桩)过多,为因果图的升级版本,就需要百度搜索正交表。

举例说明:L9(3^4)

含意如下:“L”代表正交表;该表有9行(代表9次实验)和4列(代表4个因素,每个因素有3个水平)。这种设计可以高效地探索多个因素在不同水平下对实验结果的影响。

 注意:如果是4^4=256种组合,百度的正交表就没有对应的,需要用到allpairs工具

下载地址:https://www.softpedia.com/dyn-search.php?search_term=allpairs 

解压后:

我们把4^4的表格内容粘贴复制到txt文档,并复制到解压后的路径中,再通过命令行的方式获取最终的正交表。

错误猜测法‌:

        这种方法依赖于测试人员的经验和直觉,推测软件可能存在的缺陷,并设计相应的测试用例来验证这些潜在的错误。

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

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

相关文章

游戏引擎学习第38天

仓库: https://gitee.com/mrxiao_com/2d_game 回顾上次的内容。 我们之前讨论了将精灵放在屏幕上,但颜色错误的问题。问题最终查明是因为使用了一个调整工具,导致文件的字节顺序发生了变化。重新运行“image magic”工具对一些大图像进行重新处理后&am…

TDengine 新功能 复合主键

1. 简介 从 TDengine 3.3.0.0 版本之后,新增了复合主键的功能。 TDengine 原来的时间列是不允许有重复时间戳的,有了复合主键功能后,时间列即允许有重复,重复后的时间戳按紧跟其后第二列主键列的值来确定唯一性。 此功能的常用…

aws(学习笔记第十六课) 使用负载均衡器(ELB)解耦webserver以及输出ELB的日志到S3

aws(学习笔记第十六课) 使用负载均衡器(ELB)以及输出ELB的日志到S3 学习内容: 使用负载均衡器(ELB)解耦web server输出ELB的日志到S3 1. 使用负载均衡器(ELB) 全体架构 使用ELB(Elastic Load Balancer)能够解耦外部internet访问和web server之间的耦合&#xff0c…

深入理解C#的TCPIP通信机制

本文还有配套的精品资源,点击获取 简介:在分布式系统和实时数据交换应用中,C#作为一种现代面向对象编程语言,利用其***命名空间下的Socket类,提供强大的TCP/IP通信功能。本文将探讨C#中TCP/IP通信的基本概念、使用方…

M9484C VXG 矢量信号发生器- 110GHz-

M9484C VXG 矢量信号发生器 - 110GHz- M9484C VXG 是一款矢量信号发生器,在每个通道上提供 2.5 GHz 调制带宽,能够生成高达 54 GHz 的信号。 这款 VXG 矢量信号发生器可以组成经过校准和同步的全方位综合解决方案,帮助您更快测试下一代无线…

高项 - 项目管理原则与项目绩效域

个人总结,仅供参考,欢迎加好友一起讨论 博文更新参考时间点:2024-12 高项 - 章节与知识点汇总:点击跳转 文章目录 高项 - 项目管理原则与项目绩效域项目管理12条原则原则1:成为勤勉、尊重和关心他人的管家 (p202)原则…

仿真技术助力高尔夫球打破传统设计局限,实现球杆强大的功能

Altair近日宣布与业内领先的高尔夫装备制造商 Cleveland Golf 开展合作,以设计新款 HiBore XL 球杆。借助 Altair 先进的仿真与设计技术,Cleveland Golf 不断刷新高尔夫装备的行业标准,并在球杆产品设计方面实现突破。 Cleveland Golf 借助 A…

python字符串处理基础操作总结

1.去掉空格或者特殊符号 input_str.strip() #去掉所有空格 input_str.lstrip() #去掉左边空格 input_str.rstrip() #去掉右边空格 def print_hi():input_str 今天天气不错,风和日丽 out input_str.strip()print(input_str)print(out)if __name__ __main__:print…

阿里云PolarDB 如何进行数据恢复,文档总结

PolarDB不同场景下的恢复方式文档介绍: PolarDB在不同误操作场景下如何恢复数据_云原生数据库 PolarDB(PolarDB)-阿里云帮助中心 1. 不管误删的是表还是数据库,通过快照或者pitr的方式恢复到一个新的集群 全量恢复1 - 从备份集恢复: 如何从…

C#请求https提示未能为 SSL/TLS 安全通道建立信任关系

System.Net.WebException: 基础连接已经关闭: 未能为 SSL/TLS 安全通道建立信任关系 ,这个错误通常表明你的应用程序在尝试建立一个安全的 SSL/TLS 连接时遇到了问题。这通常是由于证书验证失败引起的。证书验证失败可能有几个原因: 证书不受信任&#…

Trimble X9三维激光扫描仪高效应对化工厂复杂管道扫描测绘挑战【沪敖3D】

化工安全关系到国计民生,近年来随着化工厂数字化改革不断推进,数字工厂逐步成为工厂安全管理的重要手段。而化工管道作为工厂设施的重要组成部分,由于其数量多、种类繁杂,一直是企业管理的重点和难点。 传统的化工管廊往往缺乏详…

日志基础示例python和c++

文章目录 0. 引言1. python2. c 0. 引言 本文主要记录python版本和c版本常用的日志基础示例。 1. python python版本常用的是logging库,结合colorlog库,可根据不同日志级别打印不同颜色的日志,为了便于分析问题,还添加了日志保…

【Linux】openssl version mismatch. built against 30000010, you have 30200020

错误:openssl version mismatch. built against 30000010, you have 30200020 这个错误通常是因为系统中安装了不同版本的 OpenSSL 库,导致程序在编译时使用了一个版本的 OpenSSL,而运行时却加载了另一个版本的库。根据错误信息,您…

智能码二维码的应用如何与其他技术(如物联网)结合,以提高电动工具行业的效率?

智能码二维码与物联网等技术的结合,能够多方面提高电动工具行业的效率,以下是详细介绍: 生产管理环节 与物联网传感器结合实现生产数据实时采集:在电动工具生产线上,为生产设备安装物联网传感器,并将传感器…

【Linux】基础IO-----文件详解

目录 一、文件理解: 二、C语言的文件操作: 1、fopen: 什么是当前路径: 2、fclose: 3、fwrite: 4、默认打开的三个流: 三、系统文件: 1、open: 2、close&#xf…

实时数据开发|Flink异步IO--提升性能和吞吐量

在使用Flink处理流式数据的过程中,会经常和外部系统进行数据交互。通常情况下在 Flink 中可以创建外部数据库系统的Client连接,然后通过Client连接将数据元素写入外部存储系统中或者从外部存储系统中读取数据。考虑到连接外部系统的网络等因素&#xff0…

Charts 教程:创建交互式图表的基础

ECharts 是一个开源的、基于 JavaScript 的数据可视化库,它可以帮助你快速创建交互式的图表。无论是简单的柱状图、折线图,还是复杂的地图和关系图,ECharts 都能够轻松应对。本文将带你了解如何在你的网页中使用 ECharts 创建图表&#xff0c…

【JAVA】Java高级:Spring框架与Java EE—Spring框架概述(控制反转、依赖注入)

Java开发中,Spring框架是一个极为重要的工具,它为开发者提供了一个全面的编程和配置模型,能够简化企业级应用程序的开发。Spring框架通过控制反转(IoC)和依赖注入(DI)等核心概念,使得…

鸿蒙面试---1208

HarmonyOS 三大技术理念 分布式架构:HarmonyOS 的分布式架构使得设备之间能够无缝协同工作。例如,它允许用户在不同的智能设备(如手机、平板、智能手表等)之间共享数据和功能。比如,用户可以在手机上开始编辑文档&…

26备战秋招day17——机器学习基础

机器学习入门指南:常见算法详解与代码实现 机器学习(Machine Learning, ML)是人工智能(AI)的一个重要分支,旨在通过数据驱动的方法让计算机系统自动学习和改进。对于刚接触机器学习的朋友来说,…