本文概述
软件测试的盒子测试方法包括黑盒测试和白盒测试。我们在这里讨论白盒测试, 也称为玻璃盒测试, 结构测试, 透明盒测试, 开盒测试和透明盒测试。它测试软件的内部编码和基础结构, 重点是根据预期和期望的输出检查预定义的输入。它基于应用程序的内部工作原理, 并围绕内部结构测试。在这种类型的测试中, 需要编程技能来设计测试用例。白盒测试的主要目标是专注于通过软件的输入和输出流, 并增强软件的安全性。
由于系统的内部视角, 因此使用了”白盒”一词。透明框, 白框或透明框的名称表示能够从软件的外壳看透其内部功能。
白盒测试的测试用例源自软件开发生命周期的设计阶段。数据流测试, 控制流测试, 路径测试, 分支测试, 语句和决策覆盖率所有这些由白盒测试使用的技术均作为创建无错误软件的准则。
白盒测试遵循一些工作步骤, 以使测试易于管理并易于理解下一步任务。有一些执行白盒测试的基本步骤。
白盒测试的一般步骤
- 设计所有测试方案, 测试用例, 并根据高优先级编号对它们进行优先级排序。
- 此步骤涉及在运行时研究代码, 以检查资源利用率, 未访问代码的区域, 各种方法和操作所花费的时间等。
- 在此步骤中, 将对内部子例程进行测试。内部子例程(例如非公共方法, 接口)能够适当地处理所有类型的数据。
- 此步骤专注于测试控制语句(例如循环和条件语句), 以检查不同数据输入的效率和准确性。
- 最后一步, 白盒测试包括安全性测试, 以通过查看代码如何处理安全性来检查所有可能的安全性漏洞。
白盒测试的原因
- 它标识内部安全漏洞。
- 检查代码内部的输入方式。
- 检查条件循环的功能。
- 在单个级别上测试功能, 对象和语句。
白盒测试的优势
- 白盒测试可以优化代码, 以便可以识别隐藏的错误。
- 白盒测试的测试案例可以轻松实现自动化。
- 与其他测试方法相比, 此测试更为全面, 因为它涵盖了所有代码路径。
- 即使没有GUI, 它也可以在SDLC阶段启动。
白盒测试的缺点
- 对于大规模编程应用程序, 白盒测试非常耗时。
- 白盒测试非常昂贵且复杂。
- 由于开发人员未详细说明, 可能会导致生产错误。
- 白盒测试需要专业的程序员, 他们需要对编程语言和实现有详细的了解和理解。
白盒测试中使用的技术
数据流测试 | 数据流测试是一组测试策略, 它们检查程序的控制流, 以便根据事件的顺序探索变量的顺序。 |
控制流测试 | 控制流测试通过控制结构确定程序的语句或指令的执行顺序。程序的控制结构用于开发该程序的测试用例。在这种技术中, 测试人员选择大型程序的特定部分来设置测试路径。由程序的控制图表示的测试用例。 |
Branch Testing | 分支覆盖技术用于覆盖控制流程图的所有分支。它至少覆盖一次决策点每个条件的所有可能结果(对与错)。 |
Statement Testing | 语句覆盖技术用于设计白盒测试用例。该技术涉及至少一次执行源代码的所有语句。它用于计算源代码中存在的语句总数中源代码中已执行的语句总数。 |
Decision Testing | 此技术报告布尔表达式的正确和错误结果。只要do语句, if语句和case语句(控制流语句)这样的语句有两个或多个结果的可能性, 就将其视为决策点, 因为有两个结果为真或假。 |
评论前必须登录!
注册