白盒测试快速入门1-简介

作者 : 开心源码 本文共2089个字,预计阅读时间需要6分钟 发布时间: 2022-05-13 共224人阅读

什么是白盒测试?

白盒测试被定义??为测试软件处理方案的内部结构,设计和编码。在这种类型的测试中,代码对测试人员是可见的。它主要侧重于通过应用程序验证输入和输出的流程,改进设计和可用性,增强安全性。白盒测试也称为透明盒测试,开箱测试,结构测试,基于代码的测试和玻璃盒测试。它通常由开发人员执行。

它是软件测试“盒子测试”方法的两个部分之一。其对应的黑盒测试涉及从外部或者最终客户类型的角度进行测试。另一方面,白盒测试基于应用程序的内部工作,并围绕内部测试。

因为透视框概念,使用了术语“WhiteBox”。透明框或者WhiteBox名称表示能够透过软件的外壳(或者“盒子”)进入其内部工作。同样,“黑匣子测试”中的“黑匣子”表示无法看到软件的内部工作方式,因而只能测试最终客户体验。

water.jpeg

白盒测试中验证什么?

白盒测试涉及测试以下软件代码:

  • 内部安全漏洞
  • 编码过程中的路径损坏或者结构不良
  • 特定输入流
  • 预期输出
  • 条件循环
  • 单独测试每个语句,对象和函数

测试可以在系统,集成和单元级别的软件开发中完成。白盒测试的基本目标之一是验证应用程序的工作流程。它涉及针对预期或者期望的输出测试一系列预约义输入。

假如视频无法访问,请单击此处

如何进行白盒测试?

  • 步骤1)了解源代码

测试人员经常做的第一件事就是学习并了解应用程序的源代码。因为白盒测试涉及测试应用程序的内部工作,因而测试人员必需非常理解他们正在测试的应用程序中使用的编程语言。此外,测试人员必需高度理解安全编码实践。安全性通常是测试软件的主要目标之一。

  • 步骤2)创立测试用例并执行

白盒测试的第二个基本步骤涉及测试应用程序的源代码以取得正确的流程和结构。一种方法是编写更多代码来测试应用程序的源代码。测试人员将针对应用程序中的每个过程或者一系列过程开发一些测试。此方法要求测试人员必需熟习代码,并且通常由开发人员完成。

白盒测试示例

考虑以下代码

image.png

WhiteBox测试的目标是验证代码中的所有决策分支,循环和语句。

要运用上面代码中的语句,WhiteBox测试用例就是

a = 1,b = 1
a= -1,b = -3

白盒测试技术

主要的白盒测试技术是代码覆盖率分析。有自动化工具可用于执行代码覆盖率分析。以下是少量覆盖分析技术

  • 语句覆盖: – 至少对代码中的每个可能的语句进行一次测试。

  • 分支覆盖 – 此技术检查软件应用程序的每个可能路径(if-else和其余条件循环)。

除此之外,还有许多覆盖类型,例如条件覆盖,多条件覆盖,路径覆盖,功能覆盖等。每种技术都有其自身的优点,并尝试测试(覆盖)软件代码的所有部分。使用Statement和Branch覆盖,您通常可以取得80-90%的代码覆盖率,这已足够。

白盒测试的类型

白盒测试包含几种用于评估应用程序,代码块或者特定软件包的可用性的测试类型。下面列出了 –

  • 单元测试

它通常是在应用程序上完成的第一种类型的测试。在开发时,对每个单元或者代码块执行单元测试。单元测试基本上由程序员完成。作为一名软件开发人员,您需要开发几行代码,一个函数或者一个对象,并在软件开发生命周期早期继续进行单元测试以帮助识别大多数错误之前对其进行测试以确保其正常工作。在这个阶段确定的错误更便宜,易于修复。

  • 内存泄漏测试

内存泄漏是运行速度较慢的应用程序的主要起因。假如您的软件应用程序运行缓慢,那么在检测内存泄漏方面经验丰富的QA专家非常重要。

除此之外,少量测试类型是黑盒和白盒测试的一部分。它们列出如下

  • 白盒渗透测试

在此测试中,测试人员/开发人员拥有应用程序源代码,详细网络信息,涉及的IP地址以及运行应用程序的所有服务器信息的完整信息。目的是从多个角度攻击代码以暴露安全威胁

  • 白盒Mutation测试:

Mutation测试通常用于发现用于扩展软件处理方案的最佳编码技术。

参考资料

  • python测试开发项目实战-目录
  • python工具书籍下载-持续升级
  • python 3.7极速入门教程 – 目录
  • 探讨qq群630011153 144081101
  • 原文地址
  • 本文涉及的python测试开发库 谢谢点赞!
  • 本文相关海量书籍下载

白盒测试工具

比方

  • pytest
  • nose
  • unittest
  • doctest
  • Veracode
  • EclEmma
  • RCUNIT
  • NUnit
  • JSUnit
  • JUnit
  • CppUnit
  • gtest

白盒测试的优点

  • 通过查找隐藏错误来优化代码。
  • 白盒测试案例可以轻松实现自动化。
  • 因为通常涵盖所有代码路径,因而测试更加彻底。
  • 即便GUI不可用,也可以在SDLC中尽早开始测试。

WhiteBox测试的缺点

  • 白盒测试可能非常复杂且昂贵。
  • 通常执行白盒测试用例的开发人员会厌恶它。开发人员测试的白盒测试不详细可能导致生产错误。
  • 白盒测试需要专业资源,并对编程和实现有详细的理解。
  • 白盒测试非常耗时,更大的编程应用程序需要时间来完全测试。

小结

白盒测试可能非常复杂。所涉及的复杂性与正在测试的应用程序有很大关系。执行单个简单操作的小型应用程序可以在几分钟内进行白盒测试,而较大的编程应用程序需要数天,数周甚至更长时间才能完全测试。

白盒测试应该在软件应用程序上进行,由于软件应用程序在编写后会在每次修改后再次开发。

说明
1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
2. 分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
3. 不得使用于非法商业用途,不得违反国家法律。否则后果自负!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
5. 如有链接无法下载、失效或广告,请联系管理员处理!
6. 本站资源售价只是摆设,本站源码仅提供给会员学习使用!
7. 如遇到加密压缩包,请使用360解压,如遇到无法解压的请联系管理员
开心源码网 » 白盒测试快速入门1-简介

发表回复