15.白盒测试

2024-03-30 18:44
文章标签 15 测试 白盒

本文主要是介绍15.白盒测试,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

白盒测试也是下午题的重点;几乎每年必考;

主要议题:

在这里插入图片描述

1.白盒测试概念

把软件看成透明的盒子,了解盒子中的对象,和数据的流动过程;
在这里插入图片描述

3.代码检查法

人工测试;
代码审查:
1、给代码、文档给评审小组,供其阅读;
2、程序员讲解代码设计,评审小组根据讲解情况看有无设计问题;
走查:评审小组拿到测试用例后人工运行代码;即以人的思想充当计算机运行程序,看有无问题;
这3中方法效率低;
静态结构分析、静态质量度量,看下课本即可,考试很少涉及;
在这里插入图片描述

3.逻辑覆盖法

重点,下图所有方法都需要掌握;
在这里插入图片描述
在这里插入图片描述

3.1.语句覆盖

设计足够多的测试用例,使得程序中的每个语句至少被覆盖一次;
要以最少的工作量达到目的;
虽然测试了整条路径,但是无法判断出逻辑表达式中&&写成||的情况;
以下面x=4,y=2,z=0这个测试用例,对逻辑表达式的判定,只有一半,即真的那半;覆盖程度弱;

3.2.判定覆盖

设计足够多的测试用例,使得程序中每个判定的真分支、假分支都被执行过;
虽然测试了整条路径,但是无法判断出逻辑表达式中&&写成||的情况;
在这里插入图片描述

3.3.条件覆盖

设计足够多的测试用例,使得每个判定中的条件的真假值都要出现过一次;
也就是说,第一个判定中,y>1和z0,这两个条件都要出现一次;
y>1 z
0 结果
T T T (1)
F F F

T F F (2)
F T F
只关注条件的真假值,不关注判定结果的真假值;
所以也有弊端,如上面的(1)无法判断出逻辑表达式中&&写成||的情况;而(2)的判定结果只覆盖了假的情况;

3.4.条件判定组合覆盖

既满足条件覆盖的要求,同时对结果也要满足判定覆盖的要求;
既关注条件的真假值,也关注判定结果的真假值;
如上述(1)就满足;
同样无法判断出逻辑表达式中&&写成||的情况;
在这里插入图片描述

3.5.多条件覆盖(条件组合覆盖)

设计足够多的测试用例,使得判定真的各个条件的各种可能组合(TT、TF、FT、FF)都出现过一次;
如果有n个条件,则需要2的n次方的组合,覆盖性强,工作量大;
在这里插入图片描述

3.6.修正判定条件覆盖

为避免MCC工作量大的问题;
要求程序的入口和出口被覆盖过一次(符合条件覆盖、判定覆盖),条件对判定结果是独立的(即满足二次计算);
在这里插入图片描述
对于条件a,可以选择测试用例1、5;因为1、5中,a变,b、c不变,结果变,符合二次计算的要求;
不可选择测试用例4、8;因为4、8中,a变,b、c不变,结果不变,不符合二次计算的要求;
同理可选择出关于条件b、c,符合二次计算要求的测试用例;
我们有以下三种选择:
1、5 2、4 3、4, 删除重复测试用例:1、2、3、4、5;
2、6 2、4 3、4, 删除重复测试用例:2、3、4、6;
3、7 2、4 3、4, 删除重复测试用例:2、3、4、7;
在这里插入图片描述

4.基本路径测试法

这篇关于15.白盒测试的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/862275

相关文章

Springboot的ThreadPoolTaskScheduler线程池轻松搞定15分钟不操作自动取消订单

《Springboot的ThreadPoolTaskScheduler线程池轻松搞定15分钟不操作自动取消订单》:本文主要介绍Springboot的ThreadPoolTaskScheduler线... 目录ThreadPoolTaskScheduler线程池实现15分钟不操作自动取消订单概要1,创建订单后

如何测试计算机的内存是否存在问题? 判断电脑内存故障的多种方法

《如何测试计算机的内存是否存在问题?判断电脑内存故障的多种方法》内存是电脑中非常重要的组件之一,如果内存出现故障,可能会导致电脑出现各种问题,如蓝屏、死机、程序崩溃等,如何判断内存是否出现故障呢?下... 如果你的电脑是崩溃、冻结还是不稳定,那么它的内存可能有问题。要进行检查,你可以使用Windows 11

Ilya-AI分享的他在OpenAI学习到的15个提示工程技巧

Ilya(不是本人,claude AI)在社交媒体上分享了他在OpenAI学习到的15个Prompt撰写技巧。 以下是详细的内容: 提示精确化:在编写提示时,力求表达清晰准确。清楚地阐述任务需求和概念定义至关重要。例:不用"分析文本",而用"判断这段话的情感倾向:积极、消极还是中性"。 快速迭代:善于快速连续调整提示。熟练的提示工程师能够灵活地进行多轮优化。例:从"总结文章"到"用

这15个Vue指令,让你的项目开发爽到爆

1. V-Hotkey 仓库地址: github.com/Dafrok/v-ho… Demo: 戳这里 https://dafrok.github.io/v-hotkey 安装: npm install --save v-hotkey 这个指令可以给组件绑定一个或多个快捷键。你想要通过按下 Escape 键后隐藏某个组件,按住 Control 和回车键再显示它吗?小菜一碟: <template

性能测试介绍

性能测试是一种测试方法,旨在评估系统、应用程序或组件在现实场景中的性能表现和可靠性。它通常用于衡量系统在不同负载条件下的响应时间、吞吐量、资源利用率、稳定性和可扩展性等关键指标。 为什么要进行性能测试 通过性能测试,可以确定系统是否能够满足预期的性能要求,找出性能瓶颈和潜在的问题,并进行优化和调整。 发现性能瓶颈:性能测试可以帮助发现系统的性能瓶颈,即系统在高负载或高并发情况下可能出现的问题

字节面试 | 如何测试RocketMQ、RocketMQ?

字节面试:RocketMQ是怎么测试的呢? 答: 首先保证消息的消费正确、设计逆向用例,在验证消息内容为空等情况时的消费正确性; 推送大批量MQ,通过Admin控制台查看MQ消费的情况,是否出现消费假死、TPS是否正常等等问题。(上述都是临场发挥,但是RocketMQ真正的测试点,还真的需要探讨) 01 先了解RocketMQ 作为测试也是要简单了解RocketMQ。简单来说,就是一个分

【测试】输入正确用户名和密码,点击登录没有响应的可能性原因

目录 一、前端问题 1. 界面交互问题 2. 输入数据校验问题 二、网络问题 1. 网络连接中断 2. 代理设置问题 三、后端问题 1. 服务器故障 2. 数据库问题 3. 权限问题: 四、其他问题 1. 缓存问题 2. 第三方服务问题 3. 配置问题 一、前端问题 1. 界面交互问题 登录按钮的点击事件未正确绑定,导致点击后无法触发登录操作。 页面可能存在

业务中14个需要进行A/B测试的时刻[信息图]

在本指南中,我们将全面了解有关 A/B测试 的所有内容。 我们将介绍不同类型的A/B测试,如何有效地规划和启动测试,如何评估测试是否成功,您应该关注哪些指标,多年来我们发现的常见错误等等。 什么是A/B测试? A/B测试(有时称为“分割测试”)是一种实验类型,其中您创建两种或多种内容变体——如登录页面、电子邮件或广告——并将它们显示给不同的受众群体,以查看哪一种效果最好。 本质上,A/B测

Verybot之OpenCV应用一:安装与图像采集测试

在Verybot上安装OpenCV是很简单的,只需要执行:         sudo apt-get update         sudo apt-get install libopencv-dev         sudo apt-get install python-opencv         下面就对安装好的OpenCV进行一下测试,编写一个通过USB摄像头采

Adblock Plus官方规则Easylist China说明与反馈贴(2015.12.15)

-------------------------------特别说明--------------------------------------- 视频广告问题:因Adblock Plus的局限,存在以下现象,优酷、搜狐、17173黑屏并倒数;乐视、爱奇艺播放广告。因为这些视频网站的Flash播放器被植入了检测代码,而Adblock Plus无法修改播放器。 如需同时使用ads