软件测试中的白盒测试

白盒测试(也称为透明盒测试、玻璃盒测试、透明盒测试和结构测试)验证程序的内部结构或工作原理,而不是向最终用户公开的功能。在白盒测试中,系统的内部视角(源代码)以及编程技巧用于设计测试用例。测试人员选择输入以通过代码练习路径并确定适当的输出。这类似于电路中的测试节点,例如在线测试(ICT)。

虽然白盒测试可以应用于软件测试过程的单元、集成和系统级别,但通常在单元级别进行。它可以测试单元内的路径、集成期间单元之间的路径以及系统级测试期间子系统之间的路径。尽管这种测试设计方法可以发现许多错误或问题,但它可能无法检测到规范中未实现的部分或缺失的需求。

白盒测试中使用的技术包括:

  • API 测试——使用公共和私有API(应用程序编程接口)测试应用程序
  • 代码覆盖率——创建测试以满足代码覆盖率的某些标准(例如,测试设计者可以创建测试以使程序中的所有语句至少执行一次)
  • 故障注入方法——故意引入故障来衡量测试策略的有效性
  • 突变测试方法
  • 静态测试方法

代码覆盖工具可以评估使用任何方法创建的测试套件的完整性,包括黑盒测试。这允许软件团队检查系统中很少被测试的部分,并确保最重要的功能点已经过测试。作为软件度量的代码覆盖率可以以百分比形式报告:

  • 函数覆盖率,报告执行的函数
  • 语句覆盖率,报告完成测试所执行的行数
  • 决策覆盖率,报告给定测试的 True 和 False 分支是否都已执行

100% 的语句覆盖率确保所有代码路径或分支(就控制流而言)至少执行一次。这有助于确保正确的功能,但还不够,因为相同的代码可能正确或错误地处理不同的输入。伪测试函数和方法是那些被覆盖但未指定的函数和方法(可以在不破坏任何测试用例的情况下移除它们的主体)。

软件测试中的白盒测试

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注