在白盒测试方法中,测试人员已经了解了系统内部的构造,并清晰地知道系统是如何实现的。

白盒测试又称结构测试、透明盒测试、逻辑驱动测试或基于代码的测试。白盒测试是一种测试用例设计方法,盒子指的是被测试的软件,白盒指的是盒子是可视的,你清楚盒子内部的东西以及里面是如何运作的。“白盒”法全面了解程序内部逻辑结构,对所有逻辑路径进行测试。

静态测试工具和动态测试工具。静态测试工具直接对代码进行分析,不需要运行代码,也不需要对代码编译链接,生成可执行文件。

静态测试工具一般是对代码进行语法扫描,找出不符合编码规范的地方,根据某种质量模型评价代码的质量,生成系统的调用关系图等;动态测试工具与静态测试工具不同,动态测试工具的一般采用“插桩”的方式,向代码生成的可执行文件中插入一些监测代码,用来统计程序运行时的数据。其与静态测试工具最大的不同就是动态测试工具要求被测系统实际运行。

评估一个测试工具的好坏,采用评估标准不同,所站的角度不同,评估结果大相径庭。所谓每个人的心中都有杆称,让测试人员选工具,他会站在测试的角度去选择,会更注重白盒测试能做得下去,之后才有兴趣深入去做,如果让质量人员去选,他会侧重于质量保障环节,比如非常看重覆盖率评估、测试报告提交等,但如果让企业老板选工具,恐怕他首先考虑的是这个工具的价格。所以,测试工具的选型过程,必然是各种因素综合考虑的权衡过程。进行公正的工具选型首要问题是:如何选择评估要素并赋予不同的权重,套用一句规范术语,我们先建模,确定评估模型,再按条目打分作决策。

由于白盒工具的核心功能比较确定,都离不开写脚本做测试,要打桩、构造测试数据、看覆盖率等,所以,鉴于本领域的特殊性,我们不必按功能逐项评估,只需评价这些功能服务于“测试效率提升”、“工具易用性”、“对质量保证的促进”的能力如何就可以了。

常用的白盒测试工具汇总:

Jtest:是一个代码分析和动态类、组件测试工具,是一个集成的、易于使用和自动化的Java单元测试工具。它增强代码的稳定性,防止软件错误。

Jcontract:Jcontract在系统级验证类/部件是否正确工作并被正确使用。Jcontract 是个独立工具,在功能上是Jtest 的补充。可以用Jcontract插装按DbC注解的Java代码。当您将类/部件组装成系统时,Jcontract 在运行时监视并报告错用和功能性问题。Jcontract 帮助每个开发人员有效地考核类/部件的系统级行为。

CodeWizard 代码静态分析工具,先进的C/C++源代码分析工具,使用超过500 个编码规范自动化地标明危险的,但是编译器不能检查到的代码结构。

Insure++是一个基于C/C++的自动化的内存错误、内存泄漏的精确检测工具。 Insure++能够可视化实时内存操作,准确检测出内存泄漏产生的根源。Insure++还能执行覆盖性分析,清楚地指示那些代码已经测试过。

BoundsChecker Visual C++ Edition 是针对Visual C++开发人员的首选的运行时的错误检测和调试工具。它通过驻留在Visual C++ 开发环境内部的自动调试处理程序来加速应用程序的开发,缩短产品发布的时间。BoundsChecker 对于编程中的错误,大多数是 C++中特有的提供了清晰的详细的分析。它能够检测和诊断出在静态,堆栈内存中的错误以及内存和资源泄漏问题。在运行状态下,BoundsChecker 验证超过 8,700 APIs 和 OLE 方法,包括最新的 Windows APIs, ODBC,ActiveX,DirectX, COM 和 Internet APIs。

推荐阅读:

软件测试中的白盒测试的工具,软件测试人员该如何选择白盒测试工具?常用的白盒测试工具汇总...相关推荐

  1. 软件测试中重点测什么,在软件测试中,测试员到底扮演着一个什么样的角色?...

    原标题:在软件测试中,测试员到底扮演着一个什么样的角色? 在工作中经常遇到产品上线出了bug后,第一个受到指责的是测试人员,"测试为什么当初没有发现这个问题呢",这种情况在现实工作 ...

  2. python在软件测试中的应用_Python在软件测试中的应用

    Python语言是一种面向对象的用途广泛的变成语言,语法清晰,可以完成许多任务,由于海量的第三方库的存在,实现的功能非常多也非常的容易. Python是一种动态的脚本语言,学习成本大大低于Java等编 ...

  3. 软件测试中简述w模型特点,软件测试V模型、W模型 、H 模型的特点

    软件测试V模型.W模型的特点 V模型只是将瀑布模型中的测试部分做了细化,其最大特点(可能也是最大的缺点)就是"线性执行",测试的工作在编码完成后才开始进行,显然不符合软件测试的&q ...

  4. 软件测试中的程序接缝指什么,接缝滑移-定滑移量常用测试标准与方法

    接缝滑移-定滑移量常用测试标准与方法 已被阅读9264次 2018-12-21 织物接缝滑移,也就是之前国内所称的纰裂程度.是指织物经接缝后,缝纫处的纱线抵抗外在拉力的能力,是衡量织物接缝性能的一个重 ...

  5. python编程的常用工具_小白学Python(2)——常用Python编程工具,Python IDE

    下载好Python,但是如何开始编程呢? 有几种方法, 1.第一个就是command lind 即为命令行的方式,也就是我们常说的cmd. 输入 win+ cmd 在命令行中再输入 python,即可 ...

  6. 无法定位程序输入点 except_软件测试中的功能测试点(三)

    testkuaibao|软件测试自学公众号 26.输入法半角全角检查 再输入信息中,输入一个或连串空格,查看系统如何处理,如对于要求输入符点型数据的项中,输入全角的小数点("."或 ...

  7. 收藏!!BAT 程序员们常用的开发工具

    阅读本文大概需要 15 分钟. 作者:infoQ来源:https://tinyurl.com/y4wohyqt 工欲善其事必先利其器,一个优秀的程序员除了代码写得好,善于利用各种开发工具同样可以事半功 ...

  8. 软件测试中的白盒测试分析

    伴随着软件测试技术的迅速发展,白盒和黑盒测试在测试行业中运用的越来越多.白盒测试相对于黑盒测试在很多地方是不同的,白盒趋向于对软件结构和代码进行测试,可以设计出测试用例. 可靠的软件白盒测试工程师可以 ...

  9. 论黑盒测试与白盒测试在软件测试中的不同作用

    一.引言: 黑盒测试着眼于外部结构,不考虑内部结构,只依据程序的需求规格说明书,检查程序的功能是否符合它的功能说明:而白盒测试着眼于内部结构,对软件的过程性细节做细致的检查.随着软件市场的成熟,人们对 ...

  10. 作为软件测试人员,这些常用的性能测试工具你一定要知道

    软件测试是一种促进鉴定软件的正确性.完整性.安全性和质量的活动过程,性能测试作为软件测试工作中的重要部分,通过自动化测试工具来模拟多种正常.峰值以及异常负债环境来对系统进行各项性能指标的测试,那么在性 ...

最新文章

  1. python中使用html前端页面显示图像预测结果(Pycharm)
  2. linux界面版admin,linux下Nginx+Django Admin界面无样式问题解决方法
  3. 数据结构-二叉树层次遍历
  4. Idea 设置Eclipse快捷键(常用)
  5. 西北师范大学地理与环境科学学院考研真题汇总(高等数学)持续更新。。。
  6. 【转】前端开发值得一看的文章
  7. mysql支持的时区列表_mysql按天分组支持时区
  8. 如何在网络视听行业建一扇内容安全大门?
  9. 深度比较Map的遍历
  10. javaweb基础(36)_jdbc进行批处理
  11. centos7,关闭mysql。出现mysql启动不了的情况
  12. 【UAV】串级 PID 控制原理及应用
  13. 详解线上线下收单业务(一)第三方支付
  14. 信能阳光——打造国内体育照明领域的旗舰品牌
  15. OFFICE图标不正常显示的解决办法(转载)
  16. 浏览记录-history
  17. 【Java代码】MP3、flac歌曲批量生成同名的“xxx.lrc”歌词文件导入索尼黑砖二代
  18. 数据显示强生新冠疫苗对德尔塔变异病毒有效;康方生物派安普利提交第三个上市申请 | 医药健闻...
  19. 计算机导论模拟测试练习(2018年秋)F. 习题课一 G. 习题课二 H. 跳马
  20. 备考第3天:RHEL7 系统安装与基本调试

热门文章

  1. linux微软雅黑字体库_Debian系统中安装微软雅黑字体的教程
  2. PDF是什么格式?如何编辑PDF文件?
  3. java软件前端开发_前端的编程软件哪些比较好用?
  4. mysql下载和安装详细教程
  5. 最新MT2503平台技术资料集锦
  6. C#学习(十一)——IntPtr类型
  7. 【非线性规划】- 无约束问题(1)局部极小值与全局极小值
  8. Java实现分页功能常见的几种方法
  9. 谷歌插件FeHelper的安装和使用
  10. oracle用plsql导出表结构与数据