测试为什么分白盒、黑盒、单元、集成测试?

news2025/4/15 19:37:34

一、为什么测试的概念这么多

一个软件项目就好比一部复杂的汽车,有很多零件,当每个零件生产完成后,就要测试零件是否存在质量问题。零件组成复杂的汽车后,我们还要测试汽车。比如著名的中保研,测试刹车,测试气囊,测试防撞....,顾客从4s店购买汽车,要带懂车的人帮忙检查成品车,其实也是一种测试。软件也是一样,除了有测试零件的单元测试,还有集成测试、确认测试、系统测试、验收测试等等....,看下图:

二、各种测试概念的普及

单元测试是针对软件设计中的最小单位-程序模块,进行正确性检查的测试工作。单元在软件代码中指一个函数或一个类,在图形化的软件中,单元一般指一个窗口,一个菜单。

当软件项目中相关单元都开发完成并完成单元测试后只能确保每个独立单元没有问题,  但多个单元整合成完整功能时, 需要再次进行质量验证。这个步骤就是集成测试。

集成测试又叫组装测试,通常在单元测试的基础上,将所有程序模块进行有序的、递增的测试。重点测试不同模块的接口部分。

无论单元测试还是集成测试,都是根据不同的测试阶段划分的。一个项目首先要进行的就是单元测试,单元测试完成后进行集成测试。集成测试完成后还有系统测试和验收测试等等才能完成软件项目的最终验收和交付。

在具体的测试执行过程中又分为是否查看源代码的测试方式, 不查看源代码的测试方式为黑盒测试,查看源代码的测试方式为白盒测试

黑盒测试是指测试的时候完全不考虑程序内部结构和内部特性,注重于测试软件的功能需求,只关心软件的输入数据和 输出数据。

白盒测试是指把软件的源代码打开,去研究里面的程序结构和具体编程实现方式。

除了黑盒测试与白盒测试,还有介于两者之间的灰盒测试

灰盒测试: 是介于白盒测试与黑盒测试之间的一种测试,灰盒测试多用于集成测试阶段,不仅关注输出、输入的正确性,同时也关注程序内部的情况。

软件测试工程师大多数时候在做黑盒测试。在一些特殊场景也需要辅以灰盒测试, 但白盒测试由于需要对编程非常了解,所以软件测试工程师涉及的相对较少。


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

END配套学习资源分享

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

软件测试面试文档

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

在这里插入图片描述

全套资料获取方式:

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

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

相关文章

运维圣经:挖矿木马应急响应指南

目录 挖矿木马简介 挖矿流程 挖矿木马应急响应 一. 隔离被感染主机 二. 确定挖矿进程 三. 挖矿木马清除 1、阻断矿池地址的连接 2、清除挖矿定时任务、启动项等 3、禁用可疑用户 4、定位挖矿木马文件的位置并删除 5、全盘杀毒、加固 挖矿木马简介 挖矿:…

喜报|瑞云科技荣获“年度汽车数字化营销供应商”奖

由iDigital China举办,中国国际贸易促进委员会汽车行业分会战略支持的ADMIC汽车数字化&营销创新峰会暨金璨奖颁奖盛典于2023年4月19日在上海圆满落幕。深圳市瑞云科技股份有限公司受邀参会,现场设有展位,为观众展示实时云渲染如何助力汽车…

实现阿里云域名的DDNS

实现阿里云域名的DDNS 目前现状与痛点 我们在使用ddns的时候会不会遇到这样的问题:路由器只支持指定的域名服务提供商或者是指定的域名,比如我的华为路由器就只支持花生壳: 我想看到这篇文章的小伙伴们应该都把域名注册到中国最大的域名注…

Nginx安装与配置

Nginx安装与配置 一、简介二、安装三、功能与配置3.1、正向代理3.2、反向代理3.3、负责均衡3.4、ip_hash3.5、轮询3.6、加权轮询 四、nginx安全相关配置五、常用命令 一、简介 Nginx是一个高性能的HTTP和反向代理web服务器,同时也提供了IMAP/POP3/SMTP服务。 Ngin…

Windows11 安装 CUDA/cuDNN+Pytorch

一、准备工作: 查看torch版本:进入python交互环境: >>>import torch >>>torch.__version__ 查看cuda版本:CMD窗口 nvcc --version 如果版本不一致,需要卸载再重装。 二、安装 Windows 安装 CU…

【裸机开发】指定外设根时钟配置实验(三)—— 寄存器分析篇(PERCLK_CLK_ROOT、IPG_CLK_ROOT)

前面已经完成了 PLL1 和 8 路 PFD 的初始化,至于其他 PLL 路,等实际需要的时候再初始化也不迟。接下来我们就挑选几个具体的外设时钟进行配置。 假设我们要初始化下面两个根时钟PERCLK_CLK_ROOT、IPG_CLK_ROOT。(中途可能还涉及到根时钟 AHB…

【01】如何在电脑上使用wink一键高清短视频

如何在电脑上使用wink一键高清优化短视频画质 文章目录 如何在电脑上使用wink一键高清优化短视频画质1.软件简介1.1痛点1.2解决方案 2.实际操作2.1准备工作2.1.1下载雷电模拟器2.1.2下载wink 2.2.安装软件2.2.1安装雷电模拟器2.2.2安装wink2.2.2.1在雷电模拟器中安装wink2.2.2.…

【操作系统】计算机操作系统知识点总结

文章目录 前言一、操作系统的概念与发展二、操作系统的结构与功能1、操作系统的结构2、操作系统的功能 三、进程管理1、进程2、进程的创建3、进程管理的实现4、进程控制块 四、内存管理1、内存2、内存管理3、内存管理的实现 五、文件系统1、文件系统2、文件系统的主要任务3、文…

微服务springcloud 03.Eureka实现高可用

01.运行时候项目图存在两个item service,和两个Eureka注册中心 02.在已有的项目中扩展service服务数量(item service的数量变成两个) 第一步:配置item service的启动参数 启动参数的优先级要高于yml文件的优先级 具体参数是&#…

两万字深入浅出yolov5+deepsort实现目标跟踪,含完整代码, yolov,卡尔曼滤波估计,ReID目标重识别,匈牙利匹配KM算法匹配

目录 一:前言 二:跟踪部分: ReID结构​编辑 第一帧(生成track) 第二帧 更新先验的预测值 状态矩阵的初始化 对预测值进行更新(矫正): 匹配完成,进行矫正的更新&…

CSC改派+延期|影像学医生赴英国伦敦国王学院从事访学研究

因美国拒签,又临近派出截止期限。为避免出国指标作废,Q医生希望获得英国高校的邀请函,以申请CSC的改派并延期。我们为其落实了世界名校-英国伦敦国王学院访问学者职位,导师的研究方向属前沿热点,具有广阔的发展前景。Q…

C++【二叉树进阶试题】

✨个人主页: 北 海 🎉所属专栏: C/C相关题解 🎃操作环境: Visual Studio 2019 版本 16.11.17 文章目录 606. 根据二叉树创建字符串102. 二叉树的层序遍历107. 二叉树的层序遍历 II236. 二叉树的最近公共祖先JZ36 二叉搜…

位姿估计 | 从目标特征点检测到目标体坐标系相对于相机坐标系的位姿估计过程

目录 引言技术流程1. PNP介绍2. ICP介绍a. 利用ICP求解目标相对相机的位姿b. 利用ICP求解相机帧间运动 引言 本文接着分享空间目标位姿跟踪和滤波算法中用到的一些常用内容,希望为后来者减少一些基础性内容的工作时间。以往分享总结见文章:位姿跟踪 | 相…

当你全力以赴世界也会为你让路,23级人大女王金融硕士准备中

当你全力以赴,世界也会为你让路,在申报人民大学与加拿大女王大学金融硕士(国际班)项目的路上你真的努力了吗? 记得曾经在知乎上看过一个问题“什么事情给你的生活带来什么改变”,下边有很多人回答说&#x…

【每日算法】【202. 快乐数】

☀️博客主页:CSDN博客主页 💨本文由 我是小狼君 原创,首发于 CSDN💢 🔥学习专栏推荐:面试汇总 ❗️游戏框架专栏推荐:游戏实用框架专栏 ⛅️点赞 👍 收藏 ⭐留言 📝&…

【Linux】—— 详解计算机体系结构

前言: 在之前,我们已经对Linux环境开发的基本工具进行了详细的学习。接下来,我们将要学习的第一大块便是关于计算机体系结构的知识!! 目录 前言 (一)冯诺依曼体系结构 基本介绍 木桶原理 …

SpringSecurity实现前后端分离登录授权详解

在介绍完SpringSecurity实现前后端分离认证之后,然后就是SpringSecurity授权,在阅读本文章之前可以先了解一下作者的上一篇文章SpringSecurity认证SpringSecurity实现前后端分离登录token认证详解_山河亦问安的博客-CSDN博客。 目录 1. 授权 1.1 权限系…

线程间的通信机制与生产者消费者案例

线程间的通信机制与生产者消费者案例 线程间通信 为什么要处理线程间通信: 当我们需要多个线程来共同完成一件任务,并且我们希望他们有规律的执行,那么多线程之间需要一些通信机制,可以协调他们的工作,以此实现多线…

中空百叶玻璃隔断怎么组装

以下是中空百叶玻璃隔断的组装步骤: 1. 准备材料:中空百叶玻璃、接头、U型槽、挂件、固定螺钉等。 2. 根据实际需要,将中空百叶玻璃按照尺寸进行切割。 3. 在地面上铺上一张软垫,将切好的玻璃放置在垫子上,然后在两侧标…

自动化部署工具 drone 部署文档 (使用于 vue java 部署 其他自行研究)

1.准备好docker环境 drone 官网 Drone CI – Automate Software Testing and Delivery 推荐使用宝塔傻瓜式一键安装宝塔面板 - 简单好用的Linux/Windows服务器运维管理面板 安装好docker环境之后开始部署容器 这里用到的git版本软件是gogs,其他自己研究 docker版的gogs和实…