软件测试Python专家之路程序员程序园

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

2019-08-10  本文已影响53人  python测试开发

什么是白盒测试?

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

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

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

water.jpeg

白盒测试中验证什么?

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

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

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

如何进行白盒测试?

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

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

白盒测试示例

考虑以下代码


image.png

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

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

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

白盒测试技术

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

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

白盒测试的类型

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

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

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

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

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

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

参考资料

白盒测试工具

比如

白盒测试的优点

WhiteBox测试的缺点

小结

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

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

上一篇 下一篇

猜你喜欢

热点阅读