软件测试要学习的基础知识——白盒测试

软件测试白盒测试 抽象解释是一种静态分析方法,通过抽象和简化程序的执行路径来识别潜在问题。它可以用于检测可能的运行时错误。 阅读详情

软件测试资料领取:[内部资源] 想拿年薪40W+的软件测试人员,这份资料必须领取~

软件测试面试刷题工具:软件测试面试刷题【800道面试题+答案免费刷】

白盒测试是通过检查软件内部的逻辑结构,对软件中的逻辑路径进行覆盖测试,以确定实际运行状态与预期状态是否一致。

白盒测试又被称为:

透明盒测试

结构化测试

逻辑驱动测试

基于代码的测试

在这里插入图片描述

白盒测试的常用技术分类

一、静态分析:

数据流分析

控制流分析

信息流分

二、动态分析:

逻辑覆盖

循环覆盖

基本路径覆盖

优缺点

一、优点:

迫使测试人员去仔细思考软件的实现

可以检测代码中的每条分支和路径

揭示隐藏在代码中的错误

对代码的测试比较彻底

让软件最优化

二、缺点:

昂贵

无法检测代码中遗漏路径和数据敏感性错误

不验证规格的正确性

原则(采用白盒测试方法必须遵循以下原则)

保证一个模块中的所有独立路劲至少被测试一次

对所有的逻辑判定均需测试取真和取假俩种情况

在上下边界及可操作范围内运行所有循环

检查程序的内部数据结构,保证其结构的有效性

工具

jtest java语言的单元测试框架

JUnit验证java的工具

cppunit跨平台的c++单元测试框架

gtest跨平台的c++单元测试框架

PhpUnit Php

Bounds Checker C++,Delphi API和OLE错误检查、指针和泄露错误检查、内存错误检查

True Time C++,Java,Visual Basic代码运行效率检查、组件性能的分析

插桩原理

对jvm的字节码插桩

基于block插桩

计算覆盖的代码块

在这里插入图片描述

逻辑覆盖

语句覆盖:就是指每条语句至少执行一次

判定覆盖:每个判定的分支都要至少执行一次

条件覆盖:要使每个判定的每个条件应取到各种可能的值

判定/条件覆盖:要同时满足判定中各条件的每一种组合至少出现一次

条件组合:是指每个判定中各条件的每一种组合至少出现一次

路径覆盖:程序当中的每一条可能的路径,至少被执行一次

点覆盖:选取足够多的测试数据,使得程序执行路劲至少经过流图的每个结点一次

边覆盖:选取足够多的测试数据,使程序的每条可能路径都至少只执行一次

在这里插入图片描述

白盒测试

正确使用白盒测试,就要先从代码分析入手,根据不同的代码逻辑规则,语句执行情况,选用适合的覆盖方法,任何一个高效的测试用例,都是针对具体测试场景的,逻辑测试不是片面的测试正确的结果或是测试错误的结果,而是尽可能全面地覆盖每一个逻辑路径。

既然看到这里,希望点赞收藏支持一下!期待 ~

最后感谢每一个认真阅读我文章的人,下方这份完整的软件测试教程已经整理上传完成,需要的朋友们可以文末自行领取:【保证100%免费】

这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你!

软件测试基础知识 —— 白盒测试 白盒测试方法基于被测程序的源代码开发测试用例。常见的白盒测试方法有逻辑覆盖、数据流测试、路径分析以及程序插装等。逻辑覆盖以程序内部的逻辑结构为基础设计测试用例,要求对被测程序的结构作到一定程度的覆盖,如语句覆盖、判定覆盖、条件覆盖、判定/条件覆盖、条件组合覆盖及路径覆盖。路径覆盖是最强的逻辑覆盖准则,实际上我们只能有选择地测试程序中某些有代表的性路径。最后: 可以在公众号:【自动化测试老司机】免费领取一份216页软件测试工程师面试宝典文档资料。以及相对应的视频学习教程免费分享! 阅读详情

相关推荐

白盒测试:理论基础

白盒测试:理论基础 2016-08-23 目录 1 白盒测试的概念2 白盒测试的主要目的3 测试覆盖标准4 白盒测试的主要方法  4.1 逻辑驱动测试    4.1.1 语句覆盖    4.1.2 判定覆盖(分支覆盖)     4.1.3 条件覆盖    4.1.4 判定/条件覆盖    4.1.5 条件组合覆盖    4.1.6 黑盒法补充测试用例  4.2 路径测试    4.2.1 基...

weixin_33805557的博客 1475

软件测试4』耗子尾汁!2021年了,你还不知道这4种白盒测试方法吗?

软件测试——详解白盒测试基本概念,四种白盒测试方法一、白盒测试基本概念1、白盒测试的定义2、白盒测试的测试对象3、白盒测试的原则4、白盒测试的分类二、静态白盒测试1、代码检查法(1)代码审查的定义(2)代码审查的目的(3)代码审查的方法(4)代码检查规则(5)代码检查项目2、静态结构分析法(1)定义(2)目的(3)静态结构分析的两种方法三、动态白盒测试1、逻辑覆盖法(1)定义(2)6种逻辑覆盖方法1)语句覆盖(SC)2)判定覆盖(DC)3)条件覆盖(CC)4)判定-条件覆盖(CDC)5)条件组合覆盖(MCC

moandaylab 5879

软件工程头歌对现有系统进行分析

本关任务:明确对现行系统进行分析的意义和步骤以及相关的基本概念。 相关知识 为了完成本关任务,你需要掌握:1.如何分析现行系统,2.系统流程图的相关概念。 对现行系统进行初步分析 对现行系统进行初步分析是可行性研究当中重要的一步,新系统的一些信息主要来源于现行系统同时要根据实际需求完成现行系统的部分功能,并再次基础上对现行系统中存在的问题进行改善和修复,分析现行系统的主要方法就是分析系统的各个部分功能模块,绘制出系统流程图。 系统流程图 系统流程图(System Flow Chart, SFC)

m0_51919640的博客 4351

软件测试技术(白盒测试

【HNUST】20级软件测试技术实验——白盒测试

有为肥宅的博客 5312

软件测试——白盒测试

关于白盒测试的一些笔记和案例,帮助更好的理解白盒测试

weixin_64476458的博客 7万+

白盒测试 - 基础

在实际操作中,需要从代码分析和代码调研入手,根据调研结果,选择测试方法,设计出高效的测试用例,尽可能全面地覆盖到代码中的每一个逻辑路径。优点;迫使测试人员仔细思考软件的实现帮助软件测试人员增大代码的覆盖率,提高代码质量,发现代码隐藏问题缺点:系统庞大时,测试开销很大,对测试人员要求较高测试基于代码,不知道设计是否争取,可能会漏掉一些功能需求。

qq_35980805的博客 256

常用嵌入式软件白盒测试工具介绍

  常用嵌入式软件白盒测试工具介绍Author: Tony      来源:http://blog.csdn.net/vincetest一、        VcTester  生产厂商 深圳市领测科技有限公司 简介 VcTester由深圳市领测科技有限公司自主研发,专业服务于嵌入式白盒测试领域的测试

张元礼-门道科技创始人|16年IT从业经验(抖音号:mtesting) 2万+
上一篇: 如何进行渗透测试以提高软件安全性?
下一篇: ​​Redis怎么测?这篇文章写的太全了
程序员可可
博客等级 码龄2年 3531粉丝 · 429原创
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值