软件测试基础知识 —— 黑盒测试

news2024/11/18 7:47:46

黑盒测试

黑盒测试又称正确性测试,或功能测试,是对产品的各功能进行验证,用于检查产品是否达到用户要求的功能或者说检查软件的功能是否符合规格说明。在测试中,把程序看作一个不能打开的黑盒子,在完全不考虑程序内部结构和内部特性的情况下,在程序接口进行测试,它只检查程序功能是否按照需求规格说明书的规定正常使用,程序是否能适当地接收输入数据而产生正确的输出信息。白盒测试在测试的早期采用,而黑盒测试主要用于测试的后期。黑盒测试故意不考虑控制结构,而是注意信息域。

黑盒测试主要测试的方面:

  • 不正确或遗漏的功能;
  • 接口、界面错误;
  • 性能错误;
  • 数据结构或外部数据访问错误;
  • 初始化或终止条件错误等等。

等价类划分

等价类划分是一种典型的黑盒测试方法,该方法完全不考虑程序的内部结构,只根据对软件的要求和说明,即需求规格说明书,把程序输入域划分成若干部分(子集),然后从每个部分中选取少数代表性数据为作测试输入。

有效等价类和无效等价类

等价类划分分为两种情况,有效等价类无效等价类

分类介绍
有效等价类是指对程序规格说明,是有意义的,合理的输人数据所构成的集合。利用有效等价类,可以检验程序是否实现了规格说明预先规定的功能和性能。
无效等价类是指对程序规格说明,是不合理或无意义的输入数据所构成的集合。利用无效等价类,可以检查程序功能和性能的实现是 否有不符合规格说明要求的地方

示例:假设存在一个三角形判断程序:输入三个正整数,根据输入的数判断组成的三角形类型。

当输入为:a = 10,b = 10,c = 10时,为有效等价类

当输入为:a = -1,b = 5,c = 9时,由于a=-1不满足,三个都为正整数的条件,因此为无效等价类。

等价类划分

划分等价类需要满足划分的集合为互不相交的一组子集,且这些子集的并是整个集合。

以上面的三角形判断程序为例:

 

边界值分析

大量的故障发生在输入或输出范围的边界上,而不是在输入范围的内部。使用边界值分析方法设计测试用例时首先应确定边界情况。

边界值分析测试数据的选取(也要考虑无效值):

  1. 选取正好等于边界的值
  2. 刚刚大于边界的值
  3. 刚刚小于边界的值

边界值分析的不足:

边界值分析要求输入的变量是独立的,否则这类方法不能产生令人满意的测试用例。例如,月份和日期就不是独立的,日期的最大值随月份的变化而变化。

边界值分析与等价划分的区别:

  1. 边界值分析不是从某等价类中随便挑一个作为代表,而是使这个等价类的每个边界都要作为测试条件。
  2. 边界值分析不仅考虑输入条件,还要考虑输出空间产生的测试情况。

决策表测试

决策表(也叫判定表)是所有的黑盒测试方法中最严格,最具有逻辑严格性的测试方法。 决策表最突出的优点是,它能把复杂的问题按各种可能的情况一一列举出来,简明而易于理解,也可避免遗漏。

决策表的原理:

在一些数据处理问题当中,某些操作的实施依赖于多个输入条件的组合。判定表能够将复杂问题按照各种可能的情况全部列举出来,避免遗漏。

如果文章对你有帮助,记得点赞,收藏,加关注。会不定期分享一些干货哦......

END配套学习资源分享

最后: 为了回馈铁杆粉丝们,我给大家整理了完整的软件测试视频学习教程,朋友们如果需要可以自行免费领取 【保证100%免费】

加入我的软件测试交流qq群:110685036免费获取~(同行大佬一起学术交流,每晚都有大佬直播分享技术知识点)

软件测试面试文档

我们学习必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有字节大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。

在这里插入图片描述

全套资料获取方式:

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

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

相关文章

利用隐藏的正例进行无监督的语义分割

文章目录 Leveraging Hidden Positives for Unsupervised Semantic Segmentation摘要本文方法目标函数Gradient Propagation to Local Hidden Positives 实验结果 Leveraging Hidden Positives for Unsupervised Semantic Segmentation 摘要 对标记像素级注释的人力的巨大需求…

CancelToken中断请求

使用场景&#xff1a;页面切换时&#xff0c;主动取消掉未调用完成的接口 注意&#xff1a;因为测试&#xff0c;连续调用5次请求&#xff0c;正常情况下只用一次 <script> import axios from axios; //这里采用传递executor函数到CancelToken的构造函数来创建cancel to…

python使用 flask+vue 制作前后端分离图书信息管理系统

前言 大家早好、午好、晚好吖 ❤ ~欢迎光临本文章 制作前后端分离图书信息管理系统的思路&#xff1a; 前端部分 首先&#xff0c;我们可以使用 VueJS 作为前端框架&#xff0c;并通过 Vue CLI 工具进行创建和管理项目。 后端部分 后端部分我们可以采用 Python Flask 框架,这…

访问学者去日本需要做什么准备?

作为访问学者前往日本需要做一些准备工作&#xff0c;确保顺利进行研究和交流。以下是知识人网的一些建议&#xff1a; 1. 签证&#xff1a;在计划出国前&#xff0c;你需要办理日本的访问学者签证。了解签证类型和所需材料&#xff0c;并提前准备好申请所需的文件。 2. 研究计…

农村饮水安全政策要求与解决措施

农村饮水安全&#xff0c;是指农村居民能够及时、方便地获得足量、洁净、负担得起的生活饮用水。农村饮水安全包括水质、水量、用水方便程度和供水保证率4项评价指标。 一、农村饮水安全问题 农村饮水安全问题一直是农村发展的重要问题。在过去&#xff0c;由于农村供水设施落…

杰林码在荧光细胞识别中的应用(一)

一、杰林码轮廓预测算法 本算法是基于我的《一种全新的图像变换理论的实验》系列博客中的算法构造的轮廓预测算法&#xff0c;能有效的进行细胞轮廓预测&#xff0c;而且从前景到背景支持50个深度层次的轮廓预测。优点&#xff1a; 1、支持各种清晰度和分辨率&#xff0c;通过…

this关键字

1. 关键字&#xff1a;this 1.1 this 是什么&#xff1f; 首先。this在Java中是一个关键字&#xff0c;this 指代的是本类的引用对象 1.2 什么时候使用 this 1.2.1 实例方法或构造器中使用当前对象的成员 1、在实例方法或构造器中&#xff0c;我们在使用get和set方法中使用…

年化33.8%,夏普1.22:lightGBM在ETF行业模动上小试牛刀(附代码下载)。

原创文章第240篇&#xff0c;专注“个人成长与财富自由、世界运作的逻辑与投资"。 今天做排序学习算法在ETF行业轮动上的策略&#xff0c;我们选用的DBDT框架是lightGBM&#xff0c;它的优点就是快且效果不错。 我们的候选集是29个行业ETF&#xff1a; etfs [159870.S…

Python编程:标准库logging使用

Python编程&#xff1a;标准库logging使用 一、 基础使用 1.1 logging使用场景 ​ 日志是什么&#xff1f;这个不用多解释。百分之九十的程序都需要提供日志功能。Python内置的logging模块&#xff0c;为我们提供了现成的高效好用的日志解决方案。但是&#xff0c;不是所有的…

python爬虫——怎么抓取职位信息

目录 背景 为什么要抓取职位信息 怎么抓取职位信息 代码示例 被反爬怎么办 使用代理IP进行爬取 总结 背景 高考刚结束&#xff0c;马上又到了大学生毕业的时候了&#xff0c;各大厂也开始了一波招工潮了&#xff0c;想知道大厂或竞争对手都招些什么人&#xff0c;有什么…

来了解一下这几个网络设备日志级别分别都适用在何种场景?

在华为设备中&#xff0c;涉及到日志的&#xff0c;我们经常会在日志级别上迷糊&#xff0c;本文就给大家介绍8种日志级别以及每个级别适用的场景。 1. Emergency&#xff08;紧急&#xff09; 紧急级别的日志是指最高级别的日志&#xff0c;表示系统遇到了严重的错误或故障&…

JMeter+Ant+jenkins搭建接口自动化测试环境

目录 前言&#xff1a; 1.ant简介 2. 构建ant环境 3.JMeter与Ant集成 4. 报告优化 5.jenkins持续集成 前言&#xff1a; JMeter是一个开源的性能测试工具&#xff0c;可以用于测试Web应用程序或API接口的性能&#xff0c;支持多种通信协议和数据格式。Ant是一个构建工具&…

ui自动化 SeleniumBase

目录 前言&#xff1a; git克隆 校验邮件的案例: 注意事项: 前言&#xff1a; SeleniumBase是一个基于Selenium WebDriver的Python框架&#xff0c;用于UI自动化测试。它具有简单易用的API接口&#xff0c;可轻松编写测试脚本以及管理测试用例。SeleniumBase不仅提供了Web…

【LeetCode】HOT 100(10)

题单介绍&#xff1a; 精选 100 道力扣&#xff08;LeetCode&#xff09;上最热门的题目&#xff0c;适合初识算法与数据结构的新手和想要在短时间内高效提升的人&#xff0c;熟练掌握这 100 道题&#xff0c;你就已经具备了在代码世界通行的基本能力。 目录 题单介绍&#…

5月总共面试31次,我人麻了....

3年测试经验原来什么都不是&#xff0c;只是给你的简历上画了一笔&#xff0c;一直觉得经验多&#xff0c;无论在哪都能找到满意的工作&#xff0c;但是现实却是给我打了一个大巴掌&#xff01;事后也不会给糖的那种... 先说一下自己的个人情况&#xff0c;普通二本计算机专业…

华为OD机试真题 JavaScript 实现【寻找密码】【2023Q1 100分】,附详细解题思路

一、题目描述 小王在进行游戏大闯关&#xff0c;有一个关卡需要输入一个密码才能通过&#xff0c;密码获得的条件如下&#xff1a; 在一个密码本中&#xff0c;每一页都有一个由 26 个小写字母组成的若干位密码&#xff0c;从它的末尾开始依次去掉一位得到的新密码也在密码本…

母线保护(4)

4、母联死区保护 在各种母差保护中&#xff0c;存在一个共同的问题&#xff0c;就是死区问题。 如图&#xff0c;在母联合位时&#xff0c;当故障发生在母联断路器与母联CT之间时&#xff0c;故障电流由II母流向I母&#xff0c;I母小差有差流&#xff0c;判断为I母故障&#x…

yum安装nginx

Nginx介绍 Nginx是一款轻量级的Web服务器/反向代理服务器及电子邮件&#xff08;IMAP/POP3&#xff09;代理服务器&#xff0c;并在一个BSD-like 协议下发行。其特点是占有内存少&#xff0c;并发能力强&#xff0c;事实上Nginx的并发能力确实在同类型的网页服务器中表现较好&…

电脑提示由于找不到vcomp140.dll无法继续执行代码怎么修复呢?这个三个方法可以帮到你

在我们打开游戏或者获取软件的时候&#xff0c;点击电脑提示由于找不到vcomp140.dll无法继续执行代码需要怎么办呢&#xff1f;vcomp140.dll是什么呢&#xff1f;相信困扰着不少小伙伴&#xff0c;vcomp140.dll是Microsoft Visual C Redistributable中的一个动态链接库文件&…

牛客网Java面试题及答案整理(2023年秋招最新版,持续更新)

学习如逆水行舟&#xff0c;尤其是 IT 行业有着日新月异的节奏&#xff0c;我们更要抓紧每一次可以学习和进步的机会。所以&#xff0c;没有撤退可言。 即使是面试跳槽&#xff0c;那也是一个学习的过程。只有全面的复习&#xff0c;才能让我们更好的充实自己&#xff0c;武装…