大数据平台测试-白盒测试静态方法解析(我奶奶都能看懂)

2023-11-03

软件测试从某种维度上分为黑盒测试和白盒测试,黑盒测试更多的是增啥改查,也就是功能测试,关于功能测试参考这里:增删改查测试场景(菜市场的大妈都能看懂)

关于白盒测试的资料参考这里:白盒测试案例设计(我爷爷都能看懂)

注意并不是说白盒测试一定就是要写代码的 ,因为有些白盒测试是不需要写代码的。比如本篇文章说的静态测试方法。 

白盒测试方法 分为静态方法和动态方法

静态设计方法

  1. 桌面检查
  2. 代码审查
  3. 代码走查
  4. 代码扫描工具

下面针对上面的检查做个说明

1、桌面检查

在白盒测试中,桌面检查(Desk Checking)指的是以人工方式对源代码或设计文档进行静态分析和检查的过程。它是一种非正式的检查方法,通过直接阅读代码或文档来发现潜在的错误、逻辑问题、一致性问题和其他缺陷。

桌面检查通常由开发人员或测试人员执行,而不是使用自动化工具。它可以在编写代码之前或代码编写过程中进行,也可以在代码编写完成后进行。通过仔细检查代码,可以发现一些常见的错误和问题,如语法错误、命名规范违规、逻辑错误、死代码(无法执行的代码)等。

桌面检查是一种低成本、高效的方法,它可以帮助发现和纠正早期的问题,减少后续阶段的调试和修复工作量。它还有助于改善代码质量、提高代码可读性和可维护性。

在进行桌面检查时,检查者通常会阅读代码,并尝试理解代码的逻辑和功能。他们可能会关注代码的结构、算法、错误处理、边界条件、输入验证等方面。通过仔细检查代码,可以发现潜在的问题,并提供建议和改进意见,以确保代码的正确性和质量。

需要注意的是,桌面检查虽然有助于发现一些问题,但它并不能完全替代其他形式的测试,如单元测试、集成测试和系统测试。因此,在软件开发过程中,桌面检查通常与其他测试方法结合使用,以实现更全面的测试覆盖

2、代码审查、代码走查

代码审查(Code Review)和代码走查(Code Walkthrough)是软件开发中常用的质量保证活动,它们有一些区别:

  1. 定义和目的:

    • 代码审查:代码审查是指开发人员对代码进行仔细检查和评审,以发现潜在的问题、错误或改进的机会。目的是确保代码质量、提高代码可读性、遵循最佳实践,并尽早发现和纠正问题。
    • 代码走查:代码走查是一个团队活动,旨在让团队成员一起检查和讨论代码。目的是共享知识、促进团队合作和交流,发现潜在问题,并确保代码符合规范和设计要求。
  2. 参与者:

    • 代码审查:代码审查通常由一名或多名开发人员进行,其中一人担任审查者角色,而其他人扮演开发者或审核者的角色。
    • 代码走查:代码走查是一个集体活动,涉及开发团队的所有成员。所有团队成员都可以参与讨论和提供反馈。
  3. 时间和频率:

    • 代码审查:代码审查通常在开发周期的某个特定阶段进行,例如在开发完成后的某个里程碑或每个功能完成后。审查的频率可以根据团队的实践和项目要求进行调整。
    • 代码走查:代码走查可以随时进行,可以作为团队例会或周期性会议的一部分。它可以在开发过程中的任何时间点进行,以便团队共同检查和讨论代码。
  4. 方法和重点:

    • 代码审查:代码审查通常是通过查看代码的每一行或每个提交来进行的。审查者会检查代码的质量、可读性、性能、安全性等方面,并提供反馈和建议。
    • 代码走查:代码走查更注重讨论和交流,团队成员可以提出问题、分享见解和经验。它更加关注代码的整体结构、设计、逻辑以及是否符合项目要求和标准。

无论是代码审查还是代码走查,它们都旨在提高代码质量、发现问题并促进团队协作。选择使用哪种方法取决于团队的需求、项目规模和时间约束

3、代码扫描工具

后端代码扫描工具: 

大数据平台测试-后端代码扫描工具_软件测试李同学的博客-CSDN博客 

可以在服务器上安装这些工具,然后根据教程完成服务接入,对应的扫描情况就可以获取得到啦 ,比如bug、坏味道、漏洞等指标

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

大数据平台测试-白盒测试静态方法解析(我奶奶都能看懂) 的相关文章

  • Mac 软件汉化教程(一)

    本篇教程旨在提供入门级汉化教程 意思就是最简单的 软件汉化也不是什么很神秘和高大上的事情 任何人都可以做汉化 主要工作就是找到软件需要汉化的英文字符串 再将其翻译成中文 当然 Mac 软件的汉化难易程度大不相同 大致可以分成三种 1 简单好
  • 解决OBS在Linux下无法录屏

    Linux下OBS无法录屏问题解决 因为OBS依赖Pipewire服务 所以就需要安装额外的依赖 sudo apt install pipewire pipewire pulse wireplumber
  • Pikachu (xss跨站脚本攻击)

    目录 xss概念 一 反射型 xss get 二 反射型 post 三 存储型 四 DOM型 五 xss盲注 六 xss之过滤 七 xss之htmlspecialchars 1 htmlspecialchars作用 flags 八 xss之

随机推荐

  • 基于openswan klips的IPsec实现分析(五)应用层和内核通信(2)

    基于openswan klips的IPsec实现分析 五 应用层和内核通信 内核操作 转载请注明出处 http blog csdn net rosetta 在数据发送一节讲过 加载模块时会执行pfkey init 初始化与用户层通信的PF
  • C++ stack容器详解

    C stack容器 stack容器的基本概念 stack的常用接口 1 构造函数 2 赋值操作 3 数据存取 4 大小操作 测试 stack容器的基本概念 stack是一种先进先出的数据结构 被称为栈 它只有一端可以出入 栈中进入数据称为
  • IO读写实例

    基本类型的读写 import java io public class TestDataStream public static void main String args throws IOException OutputStream o
  • SSE2的一些常用指令集介绍

    开门见山 前段时间学习OpenCV的FAST算法 中间有很多SSE2的指令集 深受其惑 下面我把学习过程中学到的一些指令集介绍给大家 希望能对大家有所帮助 m128i被称为128bits的整数 对其进行赋值时 可以调用 m128i mm s
  • MMKV原理详解

    性能对比 我们将 MMKV 和 SharedPreferences SQLite 进行对比 重复读写操作 1k 次 相关测试代码在Android MMKV mmkvdemo 结果如下图表 单进程性能 可见 MMKV 在写入性能上远远超越 S
  • 三、nginx两种压缩配置[gzip]

    一 nginx压缩 解释 通过配置参数 让nginx压缩指定后缀格式文件 然后发送给用户 但是这样这些压缩文件无法使用sendfile的高效传送 使用其能使得文件传输不经过程序 加载到缓存直接发送 相反off的话 需要在硬盘 缓存 程序 发
  • [Python人工智能] 十四.循环神经网络LSTM RNN回归案例之sin曲线预测

    从本专栏开始 作者正式开始研究Python深度学习 神经网络及人工智能相关知识 前一篇文章详细讲解了如何评价神经网络 绘制训练过程中的loss曲线 并结合图像分类案例讲解精确率 召回率和F值的计算过程 本篇文章将分享循环神经网络LSTM R
  • java文件的上传和下载_java文件上传和下载

    在web项目中上传文件夹现在已经成为了一个主流的需求 在OA 或者企业ERP系统中都有类似的需求 上传文件夹并且保留层级结构能够对用户行成很好的引导 用户使用起来也更方便 能够提供更高级的应用支撑 文件夹数据表结构 CREATETABLEI
  • 注解-宋红康

    目录 一 注解 Annotation 概述 二 常见的注解实例 三 如何自定义注解 四 JDK中的四个元注解 五 Java8注解的新特性 1 可重复注解 2 类型注解 一 注解 Annotation 概述 二 常见的注解实例 三 如何自定义
  • Android开发入门组件(十)——WebView

    今天主要写一下WebView 主要是在安卓应用的页面来加载或者写入网页 是比较常见的一种操作 加载网页 1 加载url 网络或者本地assets文件下的html文件 1 加载网络url webview loadUrl 相应的网址 直接在ac
  • 从外包辞职了,600小时后,我入职了字节跳动

    前言 没有绝对的天才 只有持续不断的付出 对于我们每一个平凡人来说 改变命运只能依靠努力 幸运 但如果你不够幸运 那就只能拉高努力的占比 2022年7月 我有幸成为了字节跳动的一名Java后端开发 相信同行都清楚 从外包进大厂有多难 运气之
  • c# --- 泛型解决输入和输出类型不确定问题

    一 背景 有这样一个需求 一个方法 他的返回值类型不确定 方法参数的类型不做要求 二 思考 返回值类型不确定 从继承的角度 所以类都是object的子类 返回object即可 但是这种方法是类型不安全的 需要进行类型转换 我们可以使用泛型解
  • HTML <small> 标签

    定义和用法
  • CUBLAS矩阵乘法

    include
  • Winsock属性 方法介绍

    本文章已收录于 Winsock是Mcrosoft windows提供的网络编程接口 它供了基于TCP IP协议接口实现方法 通过网络进行的数据通信 需要用地址来表示网络中的主机 TCP IP协议使用IP地址来作为主机的标识 实现的连接方式是
  • 关于connect: network is unreachable 问题的解决

    由于发现原创文章 在未署名作者及出处的情况下被转载 在以后所有的原创文章开头我都会写明作者和出处 希望朋友们以后在转载本博客原创博文时注意标明文章作者及出处 作者 liukun321 咕唧咕唧 原文出处 http blog csdn net
  • 牛客面试题库(9)

    请你说说索引怎么实现的B 树 为什么选这个数据结构 说到B 树 一般和B树做对比 都是多叉树 B 数组叶子结点存储数据 其他节点存储索引 而B树每个节点都存储数据 B 树叶子结点内通过单向链表连接 节点和节点之间通过双向链表连接 从磁盘IO
  • 匿名内部类的定义格式

    匿名内部类 1 使用条件 如果接口的实现类 或者父类的子类只需要使用唯一的一次 那么就可以省略该类的定义 改用匿名内部类 2 定义格式 接口名称 对象名 new 接口名称 覆盖重写所有抽象方法 分号不要忘 3 对匿名内部类的格式 new 接
  • springboot + mybatis启动时执行sql脚本

    目录 1 创建数据版本表 结构如下 2 创建HdVersion对象 3 创建执行sql的dao 4 创建dao对应的xml 5 创建sql执行器 实现ApplicationRunner 6 结语 背景 项目开发或发布阶段修改表结构 项目更新
  • 大数据平台测试-白盒测试静态方法解析(我奶奶都能看懂)

    软件测试从某种维度上分为黑盒测试和白盒测试 黑盒测试更多的是增啥改查 也就是功能测试 关于功能测试参考这里 增删改查测试场景 菜市场的大妈都能看懂 关于白盒测试的资料参考这里 白盒测试案例设计 我爷爷都能看懂 注意并不是说白盒测试一定就是要